Poppler 0.8.3 change to GfxFont

View: New views
10 Messages — Rating Filter:   Alert me  

Poppler 0.8.3 change to GfxFont

by Bob Jamison-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hi, all.

One of the guys on the channel asked me if Inkscape runs with Poppler 0.8.3.  I didn't know that Poppler had released anything recently, so I gave it a try on win32.  

Inkscape's sneaky use of some private Poppler APIs finally bit us!  :-).  There is a small change in GfxFont::getNextChar() that needs to be addressed for Poppler-0.8.3+.  <tsdgeos> on #poppler kindly showed me the tweak, which I committed.

To be able to use the latest Poppler and this fix, compile with
  -DPOPPLER_NEW_GFXFONT

It seems to run nicely.  But you must recompile. Do NOT use the new Poppler shared objects or DLLs without recompiling, else it is a crasher.

The tweak is just something to keep Inkscape compiling.  Miklos, can you look at this?  I'm sure there is a cleaner, more permanent fix out possible.


thanks!


bob




-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Luca Bruno :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Bob Jamison scrisse:

> Hi, all.
>
> One of the guys on the channel asked me if Inkscape runs with Poppler
> 0.8.3.  I didn't know that Poppler had released anything recently, so
> I gave it a try on win32.  

While we're at it, a friend told me that if inkscape is currently using
poppler core directly, it should be better to switch to poppler-glib,
as what we're doing is higly discouraged.

I know little about poppler but I really trust this guy and know he has
deep knowledge about poppler, and as far as I've the claim is true.
So, can you guys please check the current status and reply/act as
needed?

> thanks!
> bob

Ciao, Luca

--
 .''`.  ** Debian GNU/Linux **  | Luca Bruno
: :'  :   The Universal O.S.    | lucab (AT) debian.org
`. `'`   | GPG Key ID: 3BFB9FB3
  `-     http://www.debian.org  | Debian GNU/Linux Developer


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

attachment0 (204 bytes) Download Attachment

Parent Message unknown Re: Poppler 0.8.3 change to GfxFont

by Bob Jamison-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message



-----Original Message-----
>From: Luca Bruno <gnug.torte@...>
>
>I know little about poppler but I really trust this guy and know he has
>deep knowledge about poppler, and as far as I've the claim is true.
>So, can you guys please check the current status and reply/act as
>needed?
>

Yes, I think everyone knows that :)
>> Inkscape's sneaky use of some private Poppler APIs finally bit us!

However, what I gather is that what Inkscape needs is more than what their APIs provide.  Unless there is a hook that can catch each parse event and do some kind of callback into Inkscape code, the dependency will remain.

Maybe Miklos can look into that.



bob





-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Joshua Facemyer / Impressus Art :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hey,

I'm getting this error with newly updated svn:

In file included from /usr/include/poppler/Gfx.h:18,
                 from extension/internal/pdfinput/pdf-parser.cpp:32:
/usr/include/poppler/Object.h: In member function 'int
Object::arrayGetLength()':
/usr/include/poppler/Object.h:244: warning: deprecated conversion from
string constant to 'char*'

I ran ./configure --enable-DPOPPLER_NEW_GFXFONT

Is that correct?

JF


Bob Jamison wrote:

> Hi, all.
>
> One of the guys on the channel asked me if Inkscape runs with Poppler 0.8.3.  I didn't know that Poppler had released anything recently, so I gave it a try on win32.  
>
> Inkscape's sneaky use of some private Poppler APIs finally bit us!  :-).  There is a small change in GfxFont::getNextChar() that needs to be addressed for Poppler-0.8.3+.  <tsdgeos> on #poppler kindly showed me the tweak, which I committed.
>
> To be able to use the latest Poppler and this fix, compile with
>   -DPOPPLER_NEW_GFXFONT
>
> It seems to run nicely.  But you must recompile. Do NOT use the new Poppler shared objects or DLLs without recompiling, else it is a crasher.
>
> The tweak is just something to keep Inkscape compiling.  Miklos, can you look at this?  I'm sure there is a cleaner, more permanent fix out possible.
>
>
> thanks!
>
>
> bob
>
>
>
>
> -------------------------------------------------------------------------
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services for
> just about anything Open Source.
> http://sourceforge.net/services/buy/index.php
> _______________________________________________
> Inkscape-devel mailing list
> Inkscape-devel@...
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
>  

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Joshua Facemyer / Impressus Art :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

I'm still trying to figure out how to get this to work - any advice?

I'm pretty sure what I have below is not right.

Could someone take a moment to point me in the right direction with a
short explanation - I'm ignorant, but trying to learn.

Thanks a lot.

JF

Joshua Facemyer / Impressus Art wrote:

> Hey,
>
> I'm getting this error with newly updated svn:
>
> In file included from /usr/include/poppler/Gfx.h:18,
>                  from extension/internal/pdfinput/pdf-parser.cpp:32:
> /usr/include/poppler/Object.h: In member function 'int
> Object::arrayGetLength()':
> /usr/include/poppler/Object.h:244: warning: deprecated conversion from
> string constant to 'char*'
>
> I ran ./configure --enable-DPOPPLER_NEW_GFXFONT
>
> Is that correct?
>
> JF
>
>
> Bob Jamison wrote:
>  
>> Hi, all.
>>
>> One of the guys on the channel asked me if Inkscape runs with Poppler 0.8.3.  I didn't know that Poppler had released anything recently, so I gave it a try on win32.  
>>
>> Inkscape's sneaky use of some private Poppler APIs finally bit us!  :-).  There is a small change in GfxFont::getNextChar() that needs to be addressed for Poppler-0.8.3+.  <tsdgeos> on #poppler kindly showed me the tweak, which I committed.
>>
>> To be able to use the latest Poppler and this fix, compile with
>>   -DPOPPLER_NEW_GFXFONT
>>
>> It seems to run nicely.  But you must recompile. Do NOT use the new Poppler shared objects or DLLs without recompiling, else it is a crasher.
>>
>> The tweak is just something to keep Inkscape compiling.  Miklos, can you look at this?  I'm sure there is a cleaner, more permanent fix out possible.
>>
>>
>> thanks!
>>
>>
>> bob
>>
>>
>>
>>
>> -------------------------------------------------------------------------
>> Check out the new SourceForge.net Marketplace.
>> It's the best place to buy or sell services for
>> just about anything Open Source.
>> http://sourceforge.net/services/buy/index.php
>> _______________________________________________
>> Inkscape-devel mailing list
>> Inkscape-devel@...
>> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
>>  
>>    
>
> -------------------------------------------------------------------------
> Check out the new SourceForge.net Marketplace.
> It's the best place to buy or sell services for
> just about anything Open Source.
> http://sourceforge.net/services/buy/index.php
> _______________________________________________
> Inkscape-devel mailing list
> Inkscape-devel@...
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
>  

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Bob Jamison-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

No, it's not an autoconf option, but a CFLAGS setting.  Either:

./configure CFLAGS="-DPOPPLER_NEW_GFXFONT"

or

env CFLAGS="-DPOPPLER_NEW_GFXFONT" ./configure

Should do the job.


Now, this is just a temporary hack that I made until Miklos has an
opportunity to look at it. He already has an idea for a much better fix,
where this flag will no longer be needed.



bob





Joshua Facemyer / Impressus Art wrote:

> I'm still trying to figure out how to get this to work - any advice?
>
> I'm pretty sure what I have below is not right.
>
> Could someone take a moment to point me in the right direction with a
> short explanation - I'm ignorant, but trying to learn.
>
> Thanks a lot.
>
> JF
>
> Joshua Facemyer / Impressus Art wrote:
>> Hey,
>>
>> I'm getting this error with newly updated svn:
>>
>> In file included from /usr/include/poppler/Gfx.h:18,
>>                  from extension/internal/pdfinput/pdf-parser.cpp:32:
>> /usr/include/poppler/Object.h: In member function 'int
>> Object::arrayGetLength()':
>> /usr/include/poppler/Object.h:244: warning: deprecated conversion
>> from string constant to 'char*'
>>
>> I ran ./configure --enable-DPOPPLER_NEW_GFXFONT
>>
>> Is that correct?
>>
>> JF
>>
>>
>> Bob Jamison wrote:
>>> Hi, all.
>>>
>>> One of the guys on the channel asked me if Inkscape runs with
>>> Poppler 0.8.3.  I didn't know that Poppler had released anything
>>> recently, so I gave it a try on win32.
>>> Inkscape's sneaky use of some private Poppler APIs finally bit us!  
>>> :-).  There is a small change in GfxFont::getNextChar() that needs
>>> to be addressed for Poppler-0.8.3+. <tsdgeos> on #poppler kindly
>>> showed me the tweak, which I committed.
>>>
>>> To be able to use the latest Poppler and this fix, compile with
>>>   -DPOPPLER_NEW_GFXFONT
>>>
>>> It seems to run nicely.  But you must recompile. Do NOT use the new
>>> Poppler shared objects or DLLs without recompiling, else it is a
>>> crasher.
>>>
>>> The tweak is just something to keep Inkscape compiling.  Miklos, can
>>> you look at this?  I'm sure there


-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Joshua Facemyer / Impressus Art :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hey, thanks, Bob!

JF

Bob Jamison wrote:

> No, it's not an autoconf option, but a CFLAGS setting.  Either:
>
> ./configure CFLAGS="-DPOPPLER_NEW_GFXFONT"
>
> or
>
> env CFLAGS="-DPOPPLER_NEW_GFXFONT" ./configure
>
> Should do the job.
>
>
> Now, this is just a temporary hack that I made until Miklos has an
> opportunity to look at it. He already has an idea for a much better fix,
> where this flag will no longer be needed.
>
>
>
> bob
>
>
>
>
>
> Joshua Facemyer / Impressus Art wrote:
>> I'm still trying to figure out how to get this to work - any advice?
>>
>> I'm pretty sure what I have below is not right.
>>
>> Could someone take a moment to point me in the right direction with a
>> short explanation - I'm ignorant, but trying to learn.
>>
>> Thanks a lot.
>>
>> JF
>>
>> Joshua Facemyer / Impressus Art wrote:
>>> Hey,
>>>
>>> I'm getting this error with newly updated svn:
>>>
>>> In file included from /usr/include/poppler/Gfx.h:18,
>>>                  from extension/internal/pdfinput/pdf-parser.cpp:32:
>>> /usr/include/poppler/Object.h: In member function 'int
>>> Object::arrayGetLength()':
>>> /usr/include/poppler/Object.h:244: warning: deprecated conversion
>>> from string constant to 'char*'
>>>
>>> I ran ./configure --enable-DPOPPLER_NEW_GFXFONT
>>>
>>> Is that correct?
>>>
>>> JF
>>>
>>>
>>> Bob Jamison wrote:
>>>> Hi, all.
>>>>
>>>> One of the guys on the channel asked me if Inkscape runs with
>>>> Poppler 0.8.3.  I didn't know that Poppler had released anything
>>>> recently, so I gave it a try on win32.
>>>> Inkscape's sneaky use of some private Poppler APIs finally bit us!  
>>>> :-).  There is a small change in GfxFont::getNextChar() that needs
>>>> to be addressed for Poppler-0.8.3+. <tsdgeos> on #poppler kindly
>>>> showed me the tweak, which I committed.
>>>>
>>>> To be able to use the latest Poppler and this fix, compile with
>>>>   -DPOPPLER_NEW_GFXFONT
>>>>
>>>> It seems to run nicely.  But you must recompile. Do NOT use the new
>>>> Poppler shared objects or DLLs without recompiling, else it is a
>>>> crasher.
>>>>
>>>> The tweak is just something to keep Inkscape compiling.  Miklos,
>>>> can you look at this?  I'm sure there
>

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Joshua Facemyer / Impressus Art :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Hmmm......getting the same error stil:

In file included from /usr/include/poppler/Gfx.h:18,
                 from extension/internal/pdfinput/pdf-parser.cpp:32:
/usr/include/poppler/Object.h: In member function 'int
Object::arrayGetLength()':
/usr/include/poppler/Object.h:244: warning: deprecated conversion from
string constant to 'char*'

even after using the appropriate CFLAGS.

Any further ideas?

JF

Bob Jamison wrote:

> No, it's not an autoconf option, but a CFLAGS setting.  Either:
>
> ./configure CFLAGS="-DPOPPLER_NEW_GFXFONT"
>
> or
>
> env CFLAGS="-DPOPPLER_NEW_GFXFONT" ./configure
>
> Should do the job.
>
>
> Now, this is just a temporary hack that I made until Miklos has an
> opportunity to look at it. He already has an idea for a much better fix,
> where this flag will no longer be needed.
>
>
>
> bob
>
>
>
>
>
> Joshua Facemyer / Impressus Art wrote:
>> I'm still trying to figure out how to get this to work - any advice?
>>
>> I'm pretty sure what I have below is not right.
>>
>> Could someone take a moment to point me in the right direction with a
>> short explanation - I'm ignorant, but trying to learn.
>>
>> Thanks a lot.
>>
>> JF
>>
>> Joshua Facemyer / Impressus Art wrote:
>>> Hey,
>>>
>>> I'm getting this error with newly updated svn:
>>>
>>> In file included from /usr/include/poppler/Gfx.h:18,
>>>                  from extension/internal/pdfinput/pdf-parser.cpp:32:
>>> /usr/include/poppler/Object.h: In member function 'int
>>> Object::arrayGetLength()':
>>> /usr/include/poppler/Object.h:244: warning: deprecated conversion
>>> from string constant to 'char*'
>>>
>>> I ran ./configure --enable-DPOPPLER_NEW_GFXFONT
>>>
>>> Is that correct?
>>>
>>> JF
>>>
>>>
>>> Bob Jamison wrote:
>>>> Hi, all.
>>>>
>>>> One of the guys on the channel asked me if Inkscape runs with
>>>> Poppler 0.8.3.  I didn't know that Poppler had released anything
>>>> recently, so I gave it a try on win32.
>>>> Inkscape's sneaky use of some private Poppler APIs finally bit us!  
>>>> :-).  There is a small change in GfxFont::getNextChar() that needs
>>>> to be addressed for Poppler-0.8.3+. <tsdgeos> on #poppler kindly
>>>> showed me the tweak, which I committed.
>>>>
>>>> To be able to use the latest Poppler and this fix, compile with
>>>>   -DPOPPLER_NEW_GFXFONT
>>>>
>>>> It seems to run nicely.  But you must recompile. Do NOT use the new
>>>> Poppler shared objects or DLLs without recompiling, else it is a
>>>> crasher.
>>>>
>>>> The tweak is just something to keep Inkscape compiling.  Miklos,
>>>> can you look at this?  I'm sure there
>

-------------------------------------------------------------------------
Check out the new SourceForge.net Marketplace.
It's the best place to buy or sell services for
just about anything Open Source.
http://sourceforge.net/services/buy/index.php
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Peter Moulder :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

On Sun, Jun 15, 2008 at 11:32:05PM -0500, Bob Jamison wrote:
> No, it's not an autoconf option, but a CFLAGS setting.  Either:
>
> ./configure CFLAGS="-DPOPPLER_NEW_GFXFONT"
>
> or
>
> env CFLAGS="-DPOPPLER_NEW_GFXFONT" ./configure
>
> Should do the job.

Actually, that should be CPPFLAGS, not CFLAGS: `-D...' and `-I...' flags
are for the preprocessor, not the C compiler.

In any case, I've now added a test to configure.ac so that the user
needn't manually specify this flag, given that this `temporary hack'
is still in place after a month.

I've also added a TODO comment to the C++ code, pointing out what
looks like a memory leak: without looking at the documentation or
implementation of getNextChar, I suppose that u is getting set to new
heap-allocated memory that we're supposed to free somehow, whereas we
aren't freeing it.

pjrm.


> Now, this is just a temporary hack that I made until Miklos has an
> opportunity to look at it. He already has an idea for a much better fix,
> where this flag will no longer be needed.

-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel

Re: Poppler 0.8.3 change to GfxFont

by Bob Jamison-2 :: Rate this Message:

Reply to Author | View Threaded | Show Only this Message

Excellent!

Actually, what I was hoping for was that the Poppler guys might define a
version macro
somewhere in their API .h files.   But this is good, too.


bob


Peter Moulder wrote:

> On Sun, Jun 15, 2008 at 11:32:05PM -0500, Bob Jamison wrote:
>    
>> No, it's not an autoconf option, but a CFLAGS setting.  Either:
>>
>> ./configure CFLAGS="-DPOPPLER_NEW_GFXFONT"
>>
>> or
>>
>> env CFLAGS="-DPOPPLER_NEW_GFXFONT" ./configure
>>
>> Should do the job.
>>      
>
> Actually, that should be CPPFLAGS, not CFLAGS: `-D...' and `-I...' flags
> are for the preprocessor, not the C compiler.
>
> In any case, I've now added a test to configure.ac so that the user
> needn't manually specify this flag, given that this `temporary hack'
> is still in place after a month.
>
> I've also added a TODO comment to the C++ code, pointing out what
> looks like a memory leak: without looking at the documentation or
> implementation of getNextChar, I suppose that u is getting set to new
> heap-allocated memory that we're supposed to free somehow, whereas we
> aren't freeing it.
>
> pjrm.
>
>
>    
>> Now, this is just a temporary hack that I made until Miklos has an
>> opportunity to look at it. He already has an idea for a much better fix,
>> where this flag will no longer be needed.
>>      
>
> -------------------------------------------------------------------------
> This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
> Build the coolest Linux based applications with Moblin SDK&  win great prizes
> Grand prize is a trip for two to an Open Source event anywhere in the world
> http://moblin-contest.org/redirect.php?banner_id=100&url=/
> _______________________________________________
> Inkscape-devel mailing list
> Inkscape-devel@...
> https://lists.sourceforge.net/lists/listinfo/inkscape-devel
>
>    


-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Inkscape-devel mailing list
Inkscape-devel@...
https://lists.sourceforge.net/lists/listinfo/inkscape-devel