首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为Mathematica复制非文本PDF吗?

为Mathematica复制非文本PDF吗?
EN

Stack Overflow用户
提问于 2015-12-04 15:09:00
回答 1查看 92关注 0票数 1

我想从我的高质量的PDF文档中选择一个数据,它没有文本元素(只是一个图表),最初是由Matlab编写的。我不想为我的同事们提供全貌,因为它太过压倒性了。

Matlab中的#1工具

我知道这个线程如何读取以PDF格式存储的图像文件(就像使用i= imread('image.jpg')读取jpeg文件一样)?,但是我已经从我的同事那里得到了否认的经验,对于我的任务来说,PDF应该足够了,因为我的数据只是一个高质量的图形,没有文本元素。最相关的线程是这个如何从matlab中的pdf文件中提取数据? --大多数尝试都是基于将PDF提取到TXT,比如如何在Matlab中读取PDF文件?关于pdftotext。

我想现在imcrop的PDF,以便输出可以用于时间序列分析的数学这里,但我没有发现默认的imcrop工具的imcrop支持PDF,裁剪图像。一些发现

  • ShowSave as PDF基于回答。我做了pdf = Import[filename.pdf]; Show[pdf[[1]], PlotRange -> {{50, 200}, {100, 300}}],我在图像查看器中看到了一个很好的选定图片,但是当将图片导出回来看完整图片时失败了。为什么? PlotRange不裁剪,只在图片的顶部放一个白色的面具,这样就可以在数学中分离等等。
  • 基于这个ShowImageCrop回答。方法错误,与ImageTake混淆。
  • 基于这个ShowImageTake回答ShowImageTake不是相互内射的,因为根据手册,ImageTake至少颠倒了参数{ymin,ymax}, {xmin,xmax}的顺序。但是,我无法通过逆转参数来选择正确的选择。为什么?

Mathematica评语

如果选定的区域能相互对应,那就太好了。因此,我想有一些视觉工具,以选择适当的区域从图形。我注意到在放大原始图像时会出现一些混叠现象。很高兴知道Mathematica是如何用ImageTake处理这种情况的。

你如何准备PDF图像的打印出来的时间系列工具箱的数学?我想这个问题是关于图像提取的。但是,我将这个问题扩展到了更好的Matlab颜色图和数学时序工具箱的图像提取?线程中。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-12-04 15:55:36

Mathematica会将您的pdf导入为一个图形对象,您可以使用plotrange“裁剪”。

代码语言:javascript
复制
pdf = Import[filename.pdf];
Show[pdf[[1]], PlotRange -> {{50, 200}, {100, 300}}]  

注“点”中的值为{{xmin,xmax},{ymin,ymax}}

您还可以对ImageTake进行栅格化,然后使用

代码语言:javascript
复制
ImageTake[Rasterize[pdf[[1]]], {10, 100}, {20, 100}]

这里的值是{ymin,ymax} , {xmin,xmax} (注意相反的顺序)

注意,这里的[[1]]实际上是页码。我很确定Import会返回一个页面列表,即使pdf是一个页面。

如果你真的想提取地块数据,那就完全是另一个问题了。为此,我建议使用mathematica.stackexchange.com并提供一个示例文件。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34091361

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档