Date: prev next · Thread: first prev next last
2011 Archives by date, by thread · List index


Hi,

I've recently noticed the EPS export filter uses "Sun Microsystems,
Inc." for %%Creator header.
https://bugs.freedesktop.org/show_bug.cgi?id=33569

Here is a patch to make the filter use product name for the header.
It's actually copied from PDF export filter.

Cheers,
--
KUROSAWA, Takeshi <taken.spc@gmail.com>
From 6ba8b204bdaeddc0759eec5e97cdbf8a1749fa04 Mon Sep 17 00:00:00 2001
From: Takeshi Kurosawa <taken.spc@gmail.com>
Date: Thu, 27 Jan 2011 14:31:57 +0900
Subject: [PATCH] Use product name for EPS Creator header

---
 filter/source/graphicfilter/eps/eps.cxx     |   16 +++++++++++++++-
 filter/source/graphicfilter/eps/makefile.mk |    2 +-
 2 files changed, 16 insertions(+), 2 deletions(-)

diff --git a/filter/source/graphicfilter/eps/eps.cxx b/filter/source/graphicfilter/eps/eps.cxx
index 083e9df..dd127e0 100644
--- a/filter/source/graphicfilter/eps/eps.cxx
+++ b/filter/source/graphicfilter/eps/eps.cxx
@@ -44,6 +44,7 @@
 #include <vcl/msgbox.hxx>
 #include <vcl/cvtgrf.hxx>
 #include <vcl/gradient.hxx>
+#include <unotools/configmgr.hxx>
 #include <svl/solar.hrc>
 #include <svtools/fltcall.hxx>
 #include <svtools/FilterConfigItem.hxx>
@@ -54,6 +55,8 @@
 
 #include <math.h>
 
+using namespace ::com::sun::star::uno;
+
 #define POSTSCRIPT_BOUNDINGSEARCH      0x1000  // we only try to get the BoundingBox
                                             // in the first 4096 bytes
 
@@ -459,7 +462,18 @@ void PSWriter::ImplWriteProlog( const Graphic* pPreview )
     ImplWriteLong( aSizePoint.Width() );
     ImplWriteLong( aSizePoint.Height() ,PS_RET );
     ImplWriteLine( "%%Pages: 0" );
-    ImplWriteLine( "%%Creator: Sun Microsystems, Inc." );
+    ::rtl::OUStringBuffer aCreator;
+    aCreator.appendAscii( RTL_CONSTASCII_STRINGPARAM( "%%Creator: " ) );
+    ::utl::ConfigManager& rMgr = ::utl::ConfigManager::GetConfigManager();
+    Any aProductName = rMgr.GetDirectConfigProperty( ::utl::ConfigManager::PRODUCTNAME );
+    ::rtl::OUString sProductName;
+    aProductName >>= sProductName;
+    aCreator.append( sProductName );
+    aProductName = rMgr.GetDirectConfigProperty( ::utl::ConfigManager::PRODUCTVERSION );
+    aProductName >>= sProductName;
+    aCreator.appendAscii( RTL_CONSTASCII_STRINGPARAM( " " ) );
+    aCreator.append( sProductName );
+    ImplWriteLine( ::rtl::OUStringToOString( aCreator.makeStringAndClear(), RTL_TEXTENCODING_UTF8 
).getStr() );
     ImplWriteLine( "%%Title: none" );
     ImplWriteLine( "%%CreationDate: none" );
 
diff --git a/filter/source/graphicfilter/eps/makefile.mk 
b/filter/source/graphicfilter/eps/makefile.mk
index 34c87f1..1c58e61 100644
--- a/filter/source/graphicfilter/eps/makefile.mk
+++ b/filter/source/graphicfilter/eps/makefile.mk
@@ -60,7 +60,7 @@ RESLIB1SRSFILES=$(SRS)$/$(TARGET).srs
 .IF "$(L10N_framework)"==""
 SHL1TARGET=    eps$(DLLPOSTFIX)
 SHL1IMPLIB=    eps
-SHL1STDLIBS=   $(TOOLSLIB) $(VCLLIB) $(VCLLIB) $(SVTOOLLIB) $(CPPULIB) $(SALLIB)
+SHL1STDLIBS=   $(TOOLSLIB) $(VCLLIB) $(VCLLIB) $(SVTOOLLIB) $(CPPULIB) $(SALLIB) $(UNOTOOLSLIB)
 
 SHL1LIBS=              $(SLB)$/eps.lib
 
-- 
1.7.1


Context


Privacy Policy | Impressum (Legal Info) | Copyright information: Unless otherwise specified, all text and images on this website are licensed under the Creative Commons Attribution-Share Alike 3.0 License. This does not include the source code of LibreOffice, which is licensed under the Mozilla Public License (MPLv2). "LibreOffice" and "The Document Foundation" are registered trademarks of their corresponding registered owners or are in actual use as trademarks in one or more countries. Their respective logos and icons are also subject to international copyright laws. Use thereof is explained in our trademark policy.