标签: extract

从PDF中提取所有内容

寻找从PDF文件中提取内容的解决方案(使用控制台工具或库).

它将在服务器上用于从上传的PDF文件中生成在线电子书.

需要提取以下内容:

  1. 带字体和样式的文字;
  2. 图片;
  3. 音视频;
  4. 链接和热点.
  5. 页面快照和缩略图;
  6. 一般PDF信息,例如书籍布局,页数等.

查看Adobe PDF库(仅5000美元),BCL SDK(?),PDFLib(795欧元),QuickPDF(250美元)

现在我们使用开源pdf2xml(提取文本,图像和链接)和GhostScript(快照和缩略图).剩下的其他事情是:

  1. 字体;
  2. 多媒体;
  3. 热点;
  4. 页面信息.

我们在支付大量资金(并且可能在选择错误的解决方案时出错)或使用免费/开源解决方案时犹豫不决.

您会推荐使用哪种BEST解决方案从PDF中提取几乎所有内容?

任何评论将不胜感激.

pdf text image extract

8
推荐指数
1
解决办法
6090
查看次数

从合并模块中提取文件

我想要的只是一个命令行工具,可以将文件从合并模块(.msm)提取到磁盘上.换句话说,我希望MSI可以使用相同的"管理安装"功能:

msiexec/a myProduct.msi TARGETDIR ="C:\ myInstallation"/ qn

以上只适用于msi(我可以告诉).因此,为了获得合并模块的相同效果,我正在尝试msidb.exe和orca.exe orca的文档说明:

可以从命令行指定许多合并模块选项...

从合并模块中提取文件

Orca支持三种不同的方法来提取合并模块中包含的文件.Orca可以提取单个CAB文件,将文件解压缩到模块树中,并在将文件合并到目标数据库后将其提取到源图像中...

提取文件

要从合并模块中提取单个文件,请使用

命令行上的... -x ...选项,其中是新目录树的所需路径.

指定的路径用作提取文件的根路径.所有文件都从嵌入在模块中的CAB文件中提取出来并放在指定的路径中.提取文件的目录布局基于合并模块的目录树.

这听起来像我需要的.但是当我尝试它时,orca只是打开一个编辑器(在我指定的msm上有信息)然后什么都不做.我尝试了各种命令行,通常从这开始:

orca -x theDirectory theModule.msm

我使用"theDirectory"作为我想要的任何空文件夹.就像我说的 - 它没有做任何事情.

然后我尝试了msidb,我做过的几次尝试看起来像这样:

msidb -d theModule.msm -w {storage}

msidb -d theModule.msm -x MergeModule.CABinet

在第一种情况下,我不知道要为{storage}放什么.在第二种情况下,事实证明文字字符串"MergeModule.CABinet"是必要的(它是保留名称).但是,提取的机柜不保留文件层次结构或"正常"文件名; 所以我不能用它来达到我的目的.

有人可以用命令行选项解释我做错了什么吗?有没有其他工具可以做到这一点?

installer windows-installer extract orca merge-module

8
推荐指数
3
解决办法
2万
查看次数

Gstreamer - 将命令行gst-launch转换为C代码

我一直在使用gst-launch实用程序对GStreamer进行一些实验.但是,最终目标是使用GStreamer库在我自己的应用程序上实现相同的功能.

问题是,最终很难(至少对于那些不习惯使用GStreamer API的人来说)将我在命令行上测试的内容"移植"到C/C++代码.

我可能需要移植的命令示例如下:

gst-launch filesrc location="CLIP8.mp4" ! decodebin2 ! jpegenc ! multifilesink location="test%d.jpg"
Run Code Online (Sandbox Code Playgroud)

什么是最"直接"的方式/方法来获取这样的命令并在我自己的应用程序上用C语言编写它.

另外,作为一个附带问题,我怎么能用在内存上做这项工作的可能性替换multifilesink(我正在使用OpenCV对应该从视频中提取的给定图像执行一些计算).是否可以直接解码到内存并立即使用它而无需先保存到文件系统?它可以(并且应该)是顺序的,我的意思是在我完成处理当前帧之后只会继续到下一帧,这样我就不必在内存中保留数千帧.

你说什么?

c c++ opencv extract gstreamer

8
推荐指数
1
解决办法
7189
查看次数

iOS从.mov文件中提取音频

我一直试图从.mov文件中提取音频一段时间,我似乎无法让它工作.具体来说,我需要提取音频并将其保存为.aif或.aiff文件.

我尝试使用AVMutableComposition,并将mov文件作为AVAsset加载.在最终使用AVAssetExportSession(将输出文件类型设置为AVFileTypeAIFF,这是我需要它的格式)之前,仅将音轨添加到AVMutableComposition,将文件写入aif.

我收到一个错误,说这个输出文件类型无效,我不确定为什么:

*由于未捕获的异常'NSInvalidArgumentException'而终止应用程序,原因:'输出文件类型无效'

AVAssetExportSession *exporter;
exporter = [[AVAssetExportSession alloc] initWithAsset:composition presetName:AVAssetExportPresetHighestQuality] ;

exporter.audioMix = audioMix;
exporter.outputURL=[NSURL fileURLWithPath:filePath];
exporter.outputFileType=AVFileTypeAIFF;    //Error occurs on this line
Run Code Online (Sandbox Code Playgroud)

我不确定上述方法是否有效,但我可能会认为我只是做错了.但是,如果有人知道另一种方法来实现我想要实现的目标,那么任何帮助都会非常感激.

如果需要,我可以发布更详细的代码,但目前我正在尝试其他一些方法,所以现在它有点乱.

谢谢您的帮助!

audio extract avfoundation mov ios

8
推荐指数
2
解决办法
6133
查看次数

Java:如何从int [] []中获取单个int值

我有一个int [] []对象.它在我的代码中定义如下:

public int[][] position = {
    {20, 30}, {73, 91},
    {82, 38}
};
Run Code Online (Sandbox Code Playgroud)

是否有可能获得每对圆括号中第一个值(左侧)的值,并使用for循环将它们存储为单独的int变量?基本上,是否可以提取"20","73"和"82"并将它们分别存储到int变量中?

java int extract

8
推荐指数
1
解决办法
206
查看次数

Javascript:如何获取字符串中的前4个数字?

mystring = "9862 ....... -pack size 1 - SST Unspun Label (Roll) CAT#: 9862"
Run Code Online (Sandbox Code Playgroud)

我想在这个字符串"9862"中获得前4个数字.如何获取此字符串中的第一个数字序列.并将其存储在另一个变量中?

Javascript似乎没有识别出这个变量.我不知道为什么.如果我做:

alert(mystring); //I don't get an alert pop up nor does it show any errors.
Run Code Online (Sandbox Code Playgroud)

我试图存储在'mystring'变量中的文本可能有问题吗?

javascript string extract match

8
推荐指数
1
解决办法
2万
查看次数

从DMG中提取

如何在不安装的情况下提取DMG的内容?我想在我的应用程序中添加autoupdate系统.它从网站下载DMG,然后从中提取新版本的应用程序.

macos extract dmg

8
推荐指数
2
解决办法
1万
查看次数

从文本中提取矩形中的单词

我正在努力从BufferedImage中提取快速有效的矩形字.
例如,我有以下页面:(编辑!)图像被扫描,因此它可能包含噪音,歪斜和失真.
在此输入图像描述


如何在没有矩形的情况下提取以下图像:(编辑!)我可以使用OpenCv或任何其他库,但我是高级图像处理技术的新手. 在此输入图像描述

编辑

我已经使用了karlphillip 这里建议的方法,它工作得体.
这是代码:

    package ro.ubbcluj.detection;

import java.awt.FlowLayout;
import java.awt.image.BufferedImage;
import java.io.ByteArrayInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.util.ArrayList;
import java.util.List;

import javax.imageio.ImageIO;
import javax.swing.ImageIcon;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.WindowConstants;

import org.opencv.core.Core;
import org.opencv.core.Mat;
import org.opencv.core.MatOfByte;
import org.opencv.core.MatOfPoint;
import org.opencv.core.Point;
import org.opencv.core.Scalar;
import org.opencv.core.Size;
import org.opencv.highgui.Highgui;
import org.opencv.imgproc.Imgproc;

public class RectangleDetection {

public static void main(String[] args) throws IOException {
    System.loadLibrary(Core.NATIVE_LIBRARY_NAME);
    Mat image = loadImage();
    Mat grayscale = convertToGrayscale(image);

    Mat treshold = tresholdImage(grayscale);
    List<MatOfPoint> contours …
Run Code Online (Sandbox Code Playgroud)

java opencv bufferedimage extract image-processing

8
推荐指数
1
解决办法
3276
查看次数

从TeamViewer录制(TVS文件)中提取音频/视频流?

TeamViewer允许使用文件扩展名以专有格式记录会话.tvs.可以使用本地计算机上安装的任何编解码器(使用TeamViewer)将其转换为AVI,但不能使用MP4或其他容器格式.

对AVI的编码非常慢(显然不是多线程,使用x264 vfw; XviD会花费更长时间),结果文件在VLC中无法正常播放,并且在Windows上的Avidemux中根本无法编辑.

因此,我想知道是否可以在TVS文件中提取音频和视频流,以便使用ffmpeg进行进一步处理(否则,我需要编码两次,这意味着每60分钟录像4小时).我希望它与其他格式相似,只是使用自定义编解码器 - 我希望它不是内置在TeamViewer中,但也可用于其他应用程序.

encoding extract decoding desktop-recording teamviewer

8
推荐指数
1
解决办法
1501
查看次数

使用FFMPEG提取缩略图在大型视频文件上速度非常慢?

.MOV在Linus(Debian 64bit)上使用FFMPEG 从文件中提取缩略图.

我从中提取缩略图的文件大约是430兆字节.

我使用以下命令来执行此操作:

ffmpeg -i 'largeVideoFile.mov' -ss 00:14:37 -vframes 1 'thumbnail.jpg'
Run Code Online (Sandbox Code Playgroud)

单帧提取需要3分钟以上.

我怎样才能加快速度?

performance ffmpeg extract video-thumbnails

8
推荐指数
1
解决办法
2850
查看次数