- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在使用 ghost 脚本来转换文件版本,如下所示。
shell_exec( 'gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dNOPAUSE -dQUIET -dBATCH -sOutputFile=' . $strTempConvertedPdfFilePath . ' ' . $strTempFilePath );
(我假设上面的命令是同步的,下一行仅在完成 ghost 脚本执行后执行。)
请注意,如果转换后的文件存在于路径中,我将使用 $strTempConvertedPdfFilePath 位置。
它有时有效并返回 true,有时不返回 false,只需刷新页面即可为相同的文件和路径返回 false。
我怀疑 ghost 脚本需要一些时间才能将转换后的文件复制到给定位置,因此 file_exists 会间歇性地返回 true/false。
如果有人遇到类似问题并有解决方案,请告诉我。
最佳答案
Ghostscript(或更具体地说是 pdfwrite 设备)不会花任何时间来“复制”文件,因为它不会复制文件。
打开最终目标文件 (-sOutputFile
),写入内容并关闭文件,然后卸载设备,Ghostscript 退出并将控制权返回给 shell。
我不是 shell 编程或 PHP 方面的专家,但我倾向于认为 shell_exec 在子进程退出之前将控制权返回给程序。或者,操作系统需要一些时间来检测目标文件的存在或有效性。显而易见的解决方案是在测试文件之前稍作延迟。
关于php - 幽灵脚本是否需要一些时间才能将转换后的文件复制到给定位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46561544/
我有一个 IDE 断点 (delphi-xe),每次编译和运行程序时它都会重新出现。我该如何摆脱它。 Delphi 在哪里保存有关断点的信息? 更新: 1.断点未在“Breakpoints”面板中列出
(编辑)此问题已解决 - 请参阅答案。 我遇到了一个我以前从未见过的 Java/Swing 和 Netbeans 的不幸问题。我在 Netbeans 中设计了一个基本的纸牌游戏形式,它看起来运行得很好
在我的 iOS 应用程序中,当使用以下方式从 View Controller 2 转换到 1 时: let storyBoard: UIStoryboard = UIStoryboard(name:
我有一个名为 Notebook 的父实体,与 Page 实体具有一对多关系。我有一个 ScrollView ,显示所有笔记本对象及其封面,并且我有一个带有 View Controller 的模式序列,
CIVITASINC - ATLANTIC AVENUE (手机浏览器查看) 所以...当您在 iphone 或 android 上加载上面的页面时,它会使用 Wordpress 插件 Portfol
我目前正在用 Java 制作吃 bean 人游戏。不过我有一个关于鬼魂的问题。 我知道鬼魂的攻击方式并不完全相同。我首先想研究让鬼魂去追吃 bean 的基础知识,而不用担心其中的差异。 我想问你们这些
我在使用 SQL Server 2005 数据库时遇到了一些问题,它似乎一直存在幽灵约束。我有一个脚本可以删除有问题的约束,做一些工作,然后重新添加相同的约束。通常,它工作正常。然而,现在它不能重新添
例如在 map 中: {"test-1" 23, "test-2" 456, "test-3" 23} 如何找到具有值 23 的键? 最佳答案 我认为您不需要幽灵来做到这一点,只需按值过滤即可。
我正在使用Sortable from Rubaxa对 Bootstrap 表中的行进行排序。 表格行的单元格包含 Bootstrap 输入。 现在,行排序正常,但“幽灵”图像仅显示行中的按钮,而不显示
我正在为我的博客开发一个 Ghost 模板。我想在首页上只看到来自带有特定标签(例如“新闻”)的帖子的最新帖子。 是否可以在 foreach 中按标签过滤帖子环形? 还有其他解决办法吗? (首先想到的
我是一名优秀的程序员,十分优秀!