Как тексту присвоить атрибуты (?)

  • Автор темы Автор темы GoodvinVV
  • Дата начала Дата начала
Статус
Закрыто для дальнейших ответов.

GoodvinVV

Участник
Топикстартер
Сообщения
85
Реакции
2
Код:
Dim podpis As TextFrame
Set podpis = myDocument.TextFrames.Add()
    podpis.Contents = "пример текста"                                  ' Собственно текст
    podpis.TextRange.CharacterAttributes.Size = 14                      ' кегль текст
    podpis.TextRange.CharacterAttributes.FillColor = newCMYKColor ' Цвет текста
    podpis.Top = y1                                                  ' позиция Y текст
    podpis.Left = x1                                                  ' позиция X текст
    podpis. Filloverprint=true '???????????????????????????????????????????????????????

Как присвоить оверпринт TextFrames (podpis)?
 
Ответ: Как тексту присвоить атрибуты (?)

Код:
podpis.TextRange.CharacterAttributes.overprintFill=true
что-то в этом роде, имхо, док читать некогда.
 
Ответ: Как тексту присвоить атрибуты (?)

на js так

Код:
podpis = app.activeDocument.textFrames.add();
podpis.contents = "пример текста";

var charCount = podpis.textRange.characters.length;

for(i=0; i<charCount; i++) 
{
 podpis.textRange.characters[i].characterAttributes.overprintFill=true;
}
 
  • Спасибо
Реакции: saiks
Ответ: Как тексту присвоить атрибуты (?)

For R = 1 To podpis.TextRange.Characters.Count
можно ли циклом перекрашивать каждую букву в свой цвет? я имею ввиду CMYK
next R
 
Ответ: Как тексту присвоить атрибуты (?)

Ну если в цикле работает OPM=1, то почему бы и не покрасить?
Запустить по массиву в цикле
podpis.textRange.characters.characterAttributes.FillColor = newCMYKColor
 
Ответ: Как тексту присвоить атрибуты (?)

понял что мне лучше без циклов:
Код:
            podpis.TextRange.Characters(1).CharacterAttributes.FillColor = newC
            podpis.TextRange.Characters(2).CharacterAttributes.FillColor = newM
            podpis.TextRange.Characters(3).CharacterAttributes.FillColor = newY
            podpis.TextRange.Characters(4).CharacterAttributes.FillColor = newK
 
Ответ: Как тексту присвоить атрибуты (?)

Как тексту присвоить шрифт(например Arial)??
 
Ответ: Как тексту присвоить атрибуты (?)

textFont.family?
textFont.name?
 
Ответ: Как тексту присвоить атрибуты (?)

textFont.family?
textFont.name?

я не понял...
мне просто нужно создать тест с определенным начертанием например Arial. шрифт есть в myApp.TextFonts, но как его присвоить фрейму не разобрался
Код:
For Each fontRef In myApp.TextFonts
    
    If fontRef(Name) = "Arial" Then
                  Set podpis.TextRange.CharacterAttributes.TextFont(Name) = myApp.TextFonts(Name) 
    End If
next
так не получилось...(((
 
Ответ: Как тексту присвоить атрибуты (?)

А если через точку:
Код:
Set podpis.TextRange.CharacterAttributes.TextFont.family = "Arial"
?
В синтаксисе мог ошибиться, не проверял, но принцип должен быть таким.
 
Ответ: Как тексту присвоить атрибуты (?)

А если через точку:
Код:
Set podpis.TextRange.CharacterAttributes.TextFont.family = "Arial"
?
В синтаксисе мог ошибиться, не проверял, но принцип должен быть таким.

странно, перепробовал многое, но не работает ничего illustrator CS4

Код:
Dim fontRef As Illustrator.TextFonts
 For Each fontRef In myApp.TextFonts
    If fontRef(Name) = "Arial" Then
          Set podpis.TextRange.CharacterAttributes.TextFont = myApp.TextFonts.Item(fontRef.Name)
        ''''Set podpis.TextRange.CharacterAttributes.TextFont.family = "Arial"
        Exit For
    End If
 Next

где ошибка? вроде же все правильно ...
 
Ответ: Как тексту присвоить атрибуты (?)

Предположу, что здесь:
Код:
If fontRef.name = "Arial" Then
А зачем вообще здесь это условие? Почему напрямую нельзя назначить шрифт?
 
Ответ: Как тексту присвоить атрибуты (?)

Предположу, что здесь:
Код:
If fontRef.name = "Arial" Then
А зачем вообще здесь это условие? Почему напрямую нельзя назначить шрифт?

...я просто новичек в этом деле не знаю как правильно подойти к этому...
см.пост№8
ищу способ как это сделать пока без успехов
 
Ответ: Как тексту присвоить атрибуты (?)

... ну воот так сказать решил задачку...
присвоить шрифт тексту можно так:
Код:
podpis.TextRange.CharacterAttributes.TextFont = myApp.TextFonts.Item(myFont.Name)

, но нужно предварительно узнать "myFont.Name".
например воот так :

Код:
Dim myFontName As String
    For Each myFont In myApp.TextFonts
             myFontName = myFont.Name
        If myFontName = "ArialMT" Then
            
            Exit For
        End If
    Next

по крайней мере это работает...
 
Статус
Закрыто для дальнейших ответов.