excel表格怎么设置打印格式,扫描件的PDF表格如何提取成excel表格的格式

问题:扫描件的PDF表格怎么样提取成excel表格的格式?

问题:excel表格怎么设置打印格式?

利用Python将多份excel表格整理成一份报表,放任过去逐份打开复制粘贴的不二法门。

导出excel表格,excel表格

前提:引入jar包

 1 <dependency>
 2     <groupId>org.apache.poi</groupId>
 3     <artifactId>poi-ooxml</artifactId>
 4     <version>3.10-FINAL</version>
 5 </dependency>
 6 <dependency>
 7     <groupId>org.apache.poi</groupId>
 8     <artifactId>poi</artifactId>
 9     <version>3.17</version>
10 </dependency>
11 <dependency>
12     <groupId>junit</groupId>
13     <artifactId>junit</artifactId>
14     <version>4.11</version>
15     <scope>test</scope>
16 </dependency>

将数据库表中的字段设置为表格表头,对应的笔录一回写入到excel中。

excel表格怎么设置打印格式,扫描件的PDF表格如何提取成excel表格的格式。后台代码:

import java.io.File;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFCellStyle;
import org.apache.poi.hssf.usermodel.HSSFFont;
import org.apache.poi.hssf.usermodel.HSSFPatternFormatting;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.hssf.util.CellRangeAddress;
import org.apache.poi.hssf.util.HSSFColor;
import org.junit.Test;

/**
 * 导出excel
 * @author hewangtong
 *
 */
@SuppressWarnings("deprecation")
public class ExportExcel {

    /**
     * 导出excel
     * @param out 输出到哪里
     * @param students 学生信息
     * @param title excel中内容标题
     * @param headers 学生信息表中的头标签
     */
    public void exportExcel(OutputStream out, List<Map<String, Object>> students, String title, String[] headers){
        //1.创建一个工作簿。
        HSSFWorkbook workbook = new HSSFWorkbook();
        //2.创建一个sheet页
        HSSFSheet sheet = workbook.createSheet("student-info");
        //3.设置sheet页的列宽
        sheet.setDefaultColumnWidth(30);
        //4.解决标题
        //设置标题的样式
        HSSFCellStyle titleCellStyle = workbook.createCellStyle();//创建标题样式
        titleCellStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);//使标题居中
        //设置标题的字体
        HSSFFont titleFont = workbook.createFont();
        titleFont.setBoldweight(HSSFFont.BOLDWEIGHT_BOLD);
        titleFont.setFontHeight((short) 8);
        titleFont.setFontHeightInPoints((short) 16);
        titleFont.setFontName("宋体");
        titleFont.setCharSet(HSSFFont.DEFAULT_CHARSET);
        //将字体样式植入样式中
        titleCellStyle.setFont(titleFont);
        //设置标题位置
        HSSFRow titleRow = sheet.createRow(0);//第一行
        HSSFCell titleCell = titleRow.createCell(0);
        //将标题值和样式放入相应位置
        titleCell.setCellValue(title);
        titleCell.setCellStyle(titleCellStyle);
        //合并单元格
        CellRangeAddress cra = new CellRangeAddress(0, 0, 0, 3);
        sheet.addMergedRegion(cra);
        //5.解决表格表头
        //学生统计表的表头
        HSSFRow headerRow = sheet.createRow(1);//第二行
        HSSFCell headerCell = null;
        //设置表头样式
        HSSFCellStyle headerStyle = workbook.createCellStyle();
        headerStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
        headerStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN);//设置边框
        headerStyle.setBorderLeft(HSSFCellStyle.BORDER_THIN);
        headerStyle.setBorderRight(HSSFCellStyle.BORDER_THIN);
        headerStyle.setBorderTop(HSSFCellStyle.BORDER_THIN);
        //以下这两种必须搭配使用
        headerStyle.setFillForegroundColor(HSSFColor.ORANGE.index);//填充前景颜色
        headerStyle.setFillPattern(HSSFPatternFormatting.SOLID_FOREGROUND);//填充模式
        //设置表头字体
        HSSFFont headerFont = workbook.createFont();
        headerFont.setBoldweight(HSSFFont.BOLDWEIGHT_NORMAL);
        headerFont.setCharSet(HSSFFont.DEFAULT_CHARSET);
        headerFont.setColor(HSSFColor.GREEN.index);
        headerFont.setFontName("宋体");
        headerFont.setFontHeight((short) 6);
        headerFont.setFontHeightInPoints((short) 12);
        headerStyle.setFont(headerFont);
        for(int i=0; i<headers.length; i++){
            headerCell = headerRow.createCell(i);
            headerCell.setCellValue(headers[i]);
            headerCell.setCellStyle(headerStyle);
        }
        //6.解决表格内容
        HSSFRow contentRow = null;
        HSSFCell contentCell = null;
        HSSFCellStyle contentStyle = workbook.createCellStyle();
        contentStyle.setAlignment(HSSFCellStyle.ALIGN_CENTER);
        HSSFFont contentFont = workbook.createFont();
        contentFont.setCharSet(HSSFFont.DEFAULT_CHARSET);
        contentFont.setFontName("宋体");
        contentFont.setFontHeightInPoints((short) 10);
        contentStyle.setFont(contentFont);
        for(int i=0; i<students.size(); i++){
            contentRow = sheet.createRow(i+2);//第行及其之后行
            contentCell = contentRow.createCell(0);
            contentCell.setCellValue(students.get(i).get("id").toString());
            contentCell.setCellStyle(contentStyle);
            contentCell = contentRow.createCell(1);
            contentCell.setCellValue(students.get(i).get("name").toString());
            contentCell.setCellStyle(contentStyle);
            contentCell = contentRow.createCell(2);
            contentCell.setCellValue(students.get(i).get("sex").toString());
            contentCell.setCellStyle(contentStyle);
            contentCell = contentRow.createCell(3);
            contentCell.setCellValue(students.get(i).get("age").toString());
            contentCell.setCellStyle(contentStyle);
        }
        try {
            //7.将该工作簿输出到指定目录
            workbook.write(out);
            //8.关闭资源
            out.close();
        } catch (IOException e) {
            e.printStackTrace();
        }
    }

    public List<Map<String, Object>> getStudents(){
        List<Map<String, Object>> students = new ArrayList<Map<String, Object>>();
        Map<String, Object> map1 = new HashMap<String, Object>();
        Map<String, Object> map2 = new HashMap<String, Object>();
        Map<String, Object> map3 = new HashMap<String, Object>();
        Map<String, Object> map4 = new HashMap<String, Object>();
        Map<String, Object> map5 = new HashMap<String, Object>();
        Map<String, Object> map6 = new HashMap<String, Object>();
        map1.put("id", 1);
        map1.put("name", "张");
        map1.put("sex", "男");
        map1.put("age", 12);
        students.add(map1);
        map2.put("id", 2);
        map2.put("name", "王五");
        map2.put("sex", "男");
        map2.put("age", 21);
        students.add(map2);
        map3.put("id", 3);
        map3.put("name", "赵六");
        map3.put("sex", "男");
        map3.put("age", 15);
        students.add(map3);
        map4.put("id", 4);
        map4.put("name", "晓慧");
        map4.put("sex", "女");
        map4.put("age", 18);
        students.add(map4);
        map5.put("id", 5);
        map5.put("name", "欢欢");
        map5.put("sex", "女");
        map5.put("age", 35);
        students.add(map5);
        map6.put("id", 6);
        map6.put("name", "罗罗");
        map6.put("sex", "女");
        map6.put("age", 56);
        students.add(map6);
        return students;
    }

    @Test
    public void testExportExcel(){
        OutputStream out = null;
        try {
            File file = new File("D:/"+"student"+".xls");
            if(!file.isDirectory()){
                file.createNewFile();
            }
            out = new FileOutputStream(file);
        } catch (Exception e) {
            e.printStackTrace();
        }
        String[] headers = new String[]{"编号", "姓名", "性别", "年龄"};
        exportExcel(out, getStudents(), "学生统计表", headers);

    }

职能如下:

图片 1

参考:

前提:引入jar包 1
dependency 2 groupId org.apache.poi / groupId 3 artifactId poi-ooxml /
artifactId 4 version 3.10-FINAL / version 5 / depende…

回答:题主能够应用PDF转Excel的方法,来提取Excel中的表格,当然了,你能够去那各平台实现在线PDF文书档案转换:

回答:

直白依附代码:

图片 2

点名区域打字与印刷

EXCEL打字与印刷不用全套表格都打字与印刷下来,能够只选拔要求打字与印刷的区域。
步骤:—,鼠标选中需求打字与印刷的区域。

图片 3

import xlrd 
import xlwt 
import os 
from xlutils.copy import copy 
import os.path 
from xlwt import * 
dir = input("输入文件路径\n"); 
start_row = input("输入需要读取起始行号\n"); 
start_row = int(start_row) 
end_row = input("输入结束行,输入0表示有内容的最后一行\n") 
end_row = int(end_row) 
#dir = 'E:\毕业资料\2013电2\\' 
all_file = []; 
def min_s(a ,b): 
  if a == 0: 
    return b 
  if (a >b): 
    return b 
  else: 
    return a 
#遍历所有同学文件 
for parent,folder,filename in os.walk(dir): 
  for file,x in zip(filename,range(len(filename))): 
    file = os.path.join(parent,filename[x]) 
    print(filename[x]) 
    all_file.append(file) 
print("\n文件总数:",len(all_file)) 
if os.path.exists("result.xls"): 
  os.remove("result.xls") 
w = xlwt.Workbook() 
row = 0; 
ws = w.add_sheet('sheet1',cell_overwrite_ok=True) 
style = XFStyle()              
fnt = Font()                            
fnt.height = 240     
fnt.name = u'宋体' 
style.font = fnt     
align = Alignment() 
align.horz = 2 
style.alignment = align 
for single_file_path in all_file: 
  data = xlrd.open_workbook(single_file_path); 
  sheet = data.sheet_by_index(0) 
  if sheet.nrows >= start_row: 
    for i in range(start_row-1,min_s(end_row,sheet.nrows)): 
      list = sheet.row_values(i) 
      for col in range(0,len(list)): 
        ws.write(row,col,list[col],style) 
      row = row + 1; 
  else: 
    print("非法填写的表格名称:"+single_file_path) 
  #写入目标文件 

print("运行结束,结果保存在result.xls文件里\n") 
print("对于日期,可将对应单元格设置为为日期格式便可正确显示\n" 
   "对于超长数字例如身份证号码,设置为文本格式即可\n") 
w.save('result.xls') 
os.system("pause") 

点击“PDF转Excel”,上传文书档案,点击“开首更换”即可

打字与印刷为一页

报表供给打字与印刷为一页,不用调整表格,能够在打字与印刷时展开设置。
步骤:—。图片 4

以上就是本文的全体内容,希望对咱们的就学抱有帮衬,也愿意大家多多协助脚本之家。

回答:首要选择是人造转换,pdf365.cn/smart

打字与印刷标题

打字与印刷多页表格时,打字与印刷预览唯有首先页有标题,实行设置就足以将全部页面都打字与印刷标题。
步骤:一 、–,选中题目行所在单元格;

贰 、点击可看到全数页面都有标题栏。图片 5

你也许感兴趣的稿子:

  • python比较多少个列表是不是等于的艺术
  • python比较三个列表大小的方法
  • Python完结合并八个列表的办法分析
  • python实行四个表格相比较的法门

有时大家对于人工转换会微微误会,以为人工明确是速度一点也不快,收费很贵那种,其实不然。符合规律十几页的文书档案,一页文书档案仅要求几毛钱,对于机器肯定是贵了些,但是大家都知情三个道理:一分价钱一分货,假诺花十分的低的价格想要体验到很好的劳动,那是不只怕的。

打字与印刷页码

EXCEL的页面就算经常看不到,但打字与印刷时就足以显得。
步骤:一 、–,选拔供给的页眉页脚格式,也能够自定义页眉页脚。

② 、点击能够看看表格突显页码。图片 6

图片 7

打字与印刷批注

批注的打字与印刷能够在干活表末尾,也能够如工作表展现打印。
步骤:—-选用还是。图片 8

回答: