Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2011.12.04;
Скачать: CL | DM;

Вниз

текст из PDF матрица текста   Найти похожие ветки 

 
ford ©   (2010-05-25 16:57) [0]

Доброго времени суток!
может кто разбирался с форматом PDF, и в курсе что такое эта текстовая матрица и как из нее вытащить координаты куда на странице писать текст?

в потоке объекта есть определение типа
BT
1 1 1  scn
/C2_0 1 Tf
0.02 Tc 13.56 0 0 12 104.2303 999.0885 Tm
<01FE01F201F801FB001D000301F101F201F801ED000301F5000301F8020B01F101F5>Tj
ET

т.е. определяется цвет тегом scn
потом шрифт тегом Tf и его размер
потом ширина букв Tc
и потом эта текстовая матрица шесть чисел до тега Tm
в описании сказано что
"operands a b c d e f  Set the text matrix, Tm , and the text line matrix, Tlm :
    |a b 0|
tm=|c d 0|
    |e f 1|
The operands shall all be numbers, and the initial value for Tm and Tlmshall be the identity matrix, [ 1 0 0 1 0 0 ]. Although the operands specify a matrix, they shall be passed to Tm as six separate numbers, not as an array.
The matrix specified by the operands shall not be concatenated onto the current text matrix, but shall replace it."

помогите разобраться плииз :((


 
MBo ©   (2010-05-25 17:48) [1]

похоже на матрицу аффинного преобразования (см., например, XFORM в хелпе)


 
ford ©   (2010-05-25 17:57) [2]

похоже
потому что нашел текст где перед каждой буквой задается такая матрица
а при просмотре текст написан по кругу


 
ford ©   (2010-05-25 18:16) [3]

дайте плииз ссылку как с этой штукой работать
что то я ничего не могу найти нормального в инте :(


 
ford ©   (2010-05-26 13:31) [4]

нашел в описании PDF формата, что
x"=a*x+c*y+e
y"=b*x+d*y+f

где a,b,c,d,e,f соответсвенно из матрицы

вот кусок текста потока
"
q
0 0 841.89 1190.551 re
W n
BT
1 1 1  scn
/C2_0 1 Tf
0.02 Tc 13.56 0 0 12 104.2303 999.0885 Tm
<01FE01F201F801FB001D000301F101F201F801ED000301F5000301F8020B01F101F5>Tj
ET
"
где
q- запомнить текущие настройки графики в стек (что то типа такого)
0 0 841.89 1190.551 re - определяется прямоугольник, где параметры: x,y,width,height
W n - устанавливается clip для этого прямоугольника
BT - начало текста
1 1 1 устанваливается цвет
/C2_0 1 Tf - устанавливается шрифт С2_0 размером 1
0.2 Tc интервал для букв
13.56 0 0 12 104.2303 999.0885 Tm - вот эта дурацкая матрица

возникает вопрос, а для каких изначальных x и y расчитывать эту матрицу?
если взять предыдуший описанный прямоугольник с координатами (0,0,841.89,1190.551) то получается что текст должен вывестись в прямоугольнике (104.2303,999.0885,11516.1907,15785,7005)
но из начальных условий размер страницы на которую все это отображается
0.0 0.0 841.89 1190.55

:((((

может кто знает как мне рассчитать координаты прямоугольника в который надо вписать текст, подскажите на этом примере



Страницы: 1 вся ветка

Текущий архив: 2011.12.04;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.008 c
2-1313414426
TComponent
2011-08-15 17:20
2011.12.04
Использование курсора для навигации по страницам в TWebBrwser-e


2-1312672753
zc
2011-08-07 03:19
2011.12.04
Помогите увеличить синусойду


2-1313070866
лекс01
2011-08-11 17:54
2011.12.04
создание категорий меню и размещение компанентов


2-1313774122
Sega625
2011-08-19 21:15
2011.12.04
record в array of byte


1-1276094069
madmech
2010-06-09 18:34
2011.12.04
Возникла проблема с генерацией заданного количества сочетаний