文章目录

  • 1、什么是Ghost4J
    • 1.1 Ghostscript,Postscript与PDF的关系
    • 1.2 Ghost4J是什么
  • 2、Win下安装gsdll64.dll依赖
    • 2.1 解决方案1
    • 2.2 解决方案2
  • 3、Linux下安装libgs.so依赖
    • 3.1 解决方案

1、什么是Ghost4J

1.1 Ghostscript,Postscript与PDF的关系

  • 主页:https://ghostscript.com/
    下载:https://ghostscript.com/releases/gsdnld.html

  • Postscript是Adobe提出的一种打印机语言,ghostscript可以看做是postscript的一个解释器,它实现了postscript的语言标准,同时附加了一些其独有的操作指令。

  • Ghostscript是一套建 基于Adobe、PostScript及可移植文档格式(PDF) 的页面描述语言等而编译成的免费软件。Ghostscript 可以查看及打印 PS、EPS、PDF 文件。

  • Ghostscript最初是以商业软件形式在PC市场上发售,并称之为“GoScript”。但由于速度太慢(半小时一版A4),销量极差。后来有心人买下了版权,并改在Linux上开发,成为了今日的Ghostscript。

  • 已经从Linux版本移植到其他操作系统,如其他Unix、Mac OS X、VMS、Windows、OS/2和Mac OS classic。

  • 通常,类PostScript的PDF代码产生于PostScript源文件。以PostScript代码输出的图形命令被收集并标记;其中文档所引用的任何文件图像或字体也被收集,然后每一件都被压缩成单个文件。由此,整个的PostScript领域(字体、输出、计量)得以保持完整。

  • 参考资料
    https://xz.aliyun.com/t/6392

1.2 Ghost4J是什么

  • 主页: http://www.ghost4j.org/
    下载: http://www.ghost4j.org/downloads.html
    开源:https://github.com/zippy1978/ghost4j

  • Ghost4J 绑定了 Ghostscript C API,为 Java 世界带来了 Ghostscript 的强大功能。它还提供了一个高级 API 来处理带有对象的 PDF 和 Postscript 文档。

  • 参考资料:
    https://github.com/jmecn/PdfToImage
    https://github.com/jmrozanec/pdf-converter

2、Win下安装gsdll64.dll依赖

  • 使用Ghost4J需要安装GhostScript,因为它通过JNA调用GhostScript的库文件。
    这些文件可以通过下载安装GhostScript后,在其文件夹中找到。

  • 如果缺失库,java会报错。
    异常:java.lang.UnsatisfiedLinkError: 找不到指定的模块。
    https://blog.csdn.net/fgx_123456/article/details/79236425

2.1 解决方案1

  • 在windows 64位,依赖 win32-x86-64/gsdll64.dll
    在windows 32位,依赖 win32-x86-32/gsdll32.dll

  • 因此可以直接下载文件放入windwos/system32目录下即可
    网上随便搜一搜就有

2.2 解决方案2

  • 搜集gsdll,打包为ghost4j-native-1.0.2.jar文件,直接添加到项目依赖。

  • JNA调用dll等
    https://blog.csdn.net/a491857321/article/details/51504094
    https://blog.csdn.net/a491857321/article/details/51504094
    https://pudy.github.io/Klog/log_so_dll.html
    https://www.freesion.com/article/14161097264/

3、Linux下安装libgs.so依赖

3.1 解决方案

  • Linux安装so,参考方案
    https://qa.1r1g.com/sf/ask/1235749861/

  • libgs.so安装方法:
    (1) 开源仓库下载https://github.com/ArtifexSoftware/ghostpdl-downloads
    https://github.com/ArtifexSoftware/ghostpdl-downloads/releases?page=5 # 下载地址
    wget http://downloads.ghostscript.com/public/ghostscript-9.18.tar.gz # 下载源码
    (2) 解压:tar -xzf ghostscript-9.18.tar.gz 并且进入配置目录:./configure
    (3) 安装:make install
    (4) 生成:make so
    (5) 复制到lib目录:cp ghostscript-9.18/sobin/libgs.so.9.18 /usr/lib
    (6) 创建软连接:ln -s /usr/lib/libgs.so.9.18 /usr/lib/libgs.so
    (7) 配置vi /etc/ld.so.conf.d/libgs.conf,/usr/lib/libgs.so
    (8) 生效:ldconfig

  • Linux安装rpm包等

    安装rpm包
    rpm -q --changelog -p /home/my_user/somepackage.rpm
    

Ghost4J库安装,找不到gsdll64.dll或libgs.so报错相关推荐

  1. 被气晕过去的Anaconda和本地安装的python3.6关于安装包(markdown包)报错问题

    被气晕过去的Anaconda和本地安装的python3.6关于安装包(markdown包)报错问题 01 说明: 01 此次解决问题的心理过程的煎熬   首先声明博主是个典型的强迫症患者,我觉得作为一 ...

  2. ubuntu下安装caffe时,在python中import caffe报错。

    @[TOC]ubuntu下安装caffe时,在python中import caffe报错. 编译完caffe无报错后,按照~/caffe/python/requirement.txt中的要求安装好所有 ...

  3. 已安装Anaconda情况下,命令行pip,python报错(详细 已解决)

    已安装Anaconda情况下,命令行pip,python报错(已解决) 这是报错截图 解决方案如下: 1.首先可以去找到anaconda文件夹,并打开该文件目录下的Script文件夹,查看是否有pip ...

  4. mysql 安装1364_安装完MySQL,在配置最后一步报错error Nr.1364

    [原文:http://www.mysqlperformanceblog.com/2014/01/28/10-mysql-settings-to-tune-after-installation/基本配置 ...

  5. flowiz库中遇到 ValueError: buffer is smaller than requested size报错

    flowiz库中遇到 ValueError: buffer is smaller than requested size报错 我是这句代码报的错, tmp = np.frombuffer(flo.re ...

  6. SPSS linux版本安装提示“JRE Libraries are missing or not compatible“ 报错的问题解决

    最近安装spss26 linux版本的时候报错,提示如下: Preparing to install... Extracting the JRE from the installer archive. ...

  7. apache常见错误:VC运行库(找不到 VCRUNTIME140.dll)

    1. 安装apache为系统服务时报错:找不到 VCRUNTIME140.dll 解决方案:安装 VC2015 2. 下载并安装 VC2015 运行库, 运行 VC_redist.x64.exe 无脑 ...

  8. 电脑安装python为什么显示的是程序丢失-python报错:无法启动此程序,因为计算机中丢失...

    原标题:python报错:无法启动此程序,因为计算机中丢失 python报错:无法启动此程序,因为计算机中丢失api-ms-win-crt-runtime-|1-1-0.dll api-ms-win- ...

  9. ps安装报错需要重启计算机,对在电脑上安装软件(以ps为例)出现报错问题补充理解记录...

    当我在Win7和Win10上分别安装potoshop时,我明显感到Win10与Win7的不同是,Win10很少需要配置如驱动和运行库,原版系统就已经集成了一些(新软件配新版本的Win10系统安装即用) ...

  10. linux dpkg未找到命令_Linux安装软件时90%的人会遇到这个报错,如何解决?

    提示 Could not get lock /var/lib/dpkg/lock 报错? 有些小伙伴在使用 apt 包管理器更新或安装软件时,可能会遇到过诸如以下的错误提示: E: Could not ...

最新文章

  1. 并查集(压缩路径+按秩排序)
  2. 在列表前方插入一个数据_Python基础知识详解(三):数据结构篇
  3. 计网 - HTTP 协议_强制缓存和协商缓存的区别
  4. vmware14安装macos10.12完美可升级10.13
  5. java 数据对_数据表与简单java类(一对多)
  6. Linux上的Systemctl命令
  7. java画笔覆盖在界面_Java学习笔记:swing画笔工具Graphics,刷新页面,键盘事件,随机数等【诗书画唱】...
  8. 吸收Mockito的流利度
  9. zabbix小结(一)zabbix概述
  10. 主仆模式的一点小理解
  11. Spring MVC 的配置安装
  12. Ubuntu新版发布周期
  13. openoffice转换pdf 异常问题查找处理 errorCode 525
  14. vim安装vbundle
  15. 【apache】phpstudy中apache 隐藏入口文件index.php (解决no input file specified错误)
  16. win10易升_易升win10失败怎么办
  17. 单片机原理及应用程序c语言版题库,单片机原理及应用(C语言版)
  18. 吴恩达机器学习笔记——线性代数知识回顾、梯度下降、多项式线性回归、正则方程
  19. idea-svn文件名字浅蓝色(蓝绿色)含义
  20. HTML系列之div和span标签

热门文章

  1. Android9能用的flash播放器,安卓flash播放器源码支持android9
  2. Web编程学习一: 使用JSF来创建Web应用
  3. VC知识库搜索ADO
  4. 使用Eclipse开发Android应用程序
  5. 【二、玩转vim(vi)编辑器】三大模式及命令介绍、如何通过配置文件.vimrc配置vim编辑器
  6. 如何下载spring源码?
  7. txt转excel,添加数据库
  8. Java实现求阶乘和的三种方法
  9. 软件测试--用例编写
  10. 山东大学项目实训开发日志——基于vue+springboot的医院耗材管理系统(二)