it365 pdf工具箱,开发PDF的工具还是挺难的

要想做个pdf工具箱,虽然说pdf的开源框架是很多的,但是真正要做很多的UI设计、用户交互,

还是蛮麻烦的,要花的时间很多,要把产品打磨出来是真的不容易,

开源的框架,有python的、Java的、nodejs的各种框架,能选的倒是很多。

it365工具箱

it365 pdf工具箱,pdf合并、pdf文件拆分、图片转换pdf

目前已经用代码实现了:

pdf多个文件合并

一个pdf文件拆分多个pdf文件

多个图片转换pdf文件

删除pdf的制定页面等等

编辑PDF作者、标题、关键词等属性信息

PDF页面提取工具,提取pdf指定的一部分页面

核心的代码,是一个难点;

设计用户的操作界面、写一堆代码实现用户的交互操作,也是很麻烦的

比如,再导入很多图片,转换PDF的时候,你需要做到图片文件的移动、上移下移、删除等交互,用很多代码来实现功能

function displayFile(fileData, index) {
  const fileList = document.getElementById('fileList');
  const fileItem = document.createElement('div');
  fileItem.className = 'file-item';
  fileItem.dataset.index = index;

  const img = document.createElement('img');
  img.src = fileData.img.src;

  const info = document.createElement('div');
  info.innerHTML = `<strong>${fileData.name}</strong><br>Size: ${fileData.size}<br>Resolution: ${fileData.resolution}`;

  const upButton = document.createElement('button');
  upButton.innerText = '上移';
  upButton.className = 'el-button el-button--default is-plain el-button--mini'
  upButton.addEventListener('click', () => moveFile(index, 'up'));

  const downButton = document.createElement('button');
  downButton.innerText = '下移';
  downButton.className = 'el-button el-button--default is-plain el-button--mini'
  downButton.addEventListener('click', () => moveFile(index, 'down'));

  const topButton = document.createElement('button');
  topButton.innerText = '放到顶部';
  topButton.className = 'el-button el-button--default is-plain el-button--mini'
  topButton.addEventListener('click', () => moveFile(index, 'top'));

  const bottomButton = document.createElement('button');
  bottomButton.innerText = '放到底部';
  bottomButton.className = 'el-button el-button--default is-plain el-button--mini'
  bottomButton.addEventListener('click', () => moveFile(index, 'bottom'));

  const deleteButton = document.createElement('button');
  deleteButton.innerText = '删除';
  deleteButton.className = 'el-button el-button--danger is-plain el-button--mini'
  deleteButton.addEventListener('click', () => deleteFile(index));

  fileItem.appendChild(img);
  fileItem.appendChild(info);
  fileItem.appendChild(upButton);
  fileItem.appendChild(downButton);
  fileItem.appendChild(topButton);
  fileItem.appendChild(bottomButton);
  fileItem.appendChild(deleteButton);

  fileList.appendChild(fileItem);
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值