44 lines
1.5 KiB
Diff
44 lines
1.5 KiB
Diff
diff -NrU5 inkscape-0.46.orig/src/extension/internal/pdfinput/pdf-parser.cpp inkscape-0.46/src/extension/internal/pdfinput/pdf-parser.cpp
|
|
--- inkscape-0.46.orig/src/extension/internal/pdfinput/pdf-parser.cpp 2008-06-05 00:26:20.000000000 +0200
|
|
+++ inkscape-0.46/src/extension/internal/pdfinput/pdf-parser.cpp 2008-06-05 00:51:47.000000000 +0200
|
|
@@ -2194,11 +2194,11 @@
|
|
void PdfParser::doShowText(GooString *s) {
|
|
GfxFont *font;
|
|
int wMode;
|
|
double riseX, riseY;
|
|
CharCode code;
|
|
- Unicode u[8];
|
|
+ Unicode *u = NULL;
|
|
double x, y, dx, dy, dx2, dy2, curX, curY, tdx, tdy, lineX, lineY;
|
|
double originX, originY, tOriginX, tOriginY;
|
|
double oldCTM[6], newCTM[6];
|
|
double *mat;
|
|
Object charProc;
|
|
@@ -2242,11 +2242,11 @@
|
|
oldParser = parser;
|
|
p = s->getCString();
|
|
len = s->getLength();
|
|
while (len > 0) {
|
|
n = font->getNextChar(p, len, &code,
|
|
- u, (int)(sizeof(u) / sizeof(Unicode)), &uLen,
|
|
+ &u, &uLen,
|
|
&dx, &dy, &originX, &originY);
|
|
dx = dx * state->getFontSize() + state->getCharSpace();
|
|
if (n == 1 && *p == ' ') {
|
|
dx += state->getWordSpace();
|
|
}
|
|
@@ -2291,11 +2291,11 @@
|
|
state->textTransformDelta(0, state->getRise(), &riseX, &riseY);
|
|
p = s->getCString();
|
|
len = s->getLength();
|
|
while (len > 0) {
|
|
n = font->getNextChar(p, len, &code,
|
|
- u, (int)(sizeof(u) / sizeof(Unicode)), &uLen,
|
|
+ &u, &uLen,
|
|
&dx, &dy, &originX, &originY);
|
|
|
|
if (wMode) {
|
|
dx *= state->getFontSize();
|
|
dy = dy * state->getFontSize() + state->getCharSpace();
|
|
|