当前位置: 首页 > news >正文

南宁大型网站开发河南最新消息

南宁大型网站开发,河南最新消息,什么公司做网站出名,什么网站做简历模板我在iText 7中有一个Java程序#xff0c;可以接收JSON数据并生成一个PDF文档(带有页眉和页脚)#xff0c;该文档可以很好地处理clientData注释中的变量中的数据#xff0c;但是当在无注释clientData中使用变量不起作用时#xff0c;我得到了此错误java.lang.NullPointerExc…我在iText 7中有一个Java程序可以接收JSON数据并生成一个PDF文档(带有页眉和页脚)该文档可以很好地处理clientData注释中的变量中的数据但是当在无注释clientData中使用变量不起作用时我得到了此错误java.lang.NullPointerException构建页眉和页脚(在此行中Rectangle pageSize document.getPdfDocument().getPage(i).getPageSize();)时会出现错误但不知道什么数据为null因为JSON数据和PDF的结构相同我在做什么错呢这是所有代码import com.itextpdf.kernel.pdf.PdfDocument;import com.itextpdf.kernel.pdf.PdfPage;import com.itextpdf.kernel.pdf.PdfReader;import com.itextpdf.kernel.pdf.PdfWriter;import com.itextpdf.kernel.pdf.canvas.PdfCanvas;import com.itextpdf.kernel.pdf.extgstate.PdfExtGState;import com.itextpdf.layout.Document;import com.itextpdf.layout.element.Table;import com.itextpdf.layout.element.Text;import com.itextpdf.io.image.ImageData;import com.itextpdf.io.image.ImageDataFactory;import com.itextpdf.kernel.colors.Color;import com.itextpdf.kernel.colors.DeviceRgb;import com.itextpdf.kernel.font.PdfFont;import com.itextpdf.kernel.font.PdfFontFactory;import com.itextpdf.kernel.geom.Rectangle;import com.itextpdf.layout.element.Cell;import com.itextpdf.layout.element.Image;import com.itextpdf.layout.element.List;import com.itextpdf.layout.element.ListItem;import com.itextpdf.layout.element.Paragraph;import com.itextpdf.layout.property.TextAlignment;import com.itextpdf.layout.property.VerticalAlignment;import java.io.File;import java.io.IOException;import java.text.NumberFormat;import java.util.Locale;import org.json.JSONArray;import org.json.JSONObject;public class PDFGenerator {public static final String DESTINATION path/exampleSMA.pdf;public static void main(String[] args) throws Exception {File file new File(DEST);file.getParentFile().mkdirs();//WORK//String clientData {\nombre_cliente\:\Postobon\,\contacto\:\Kelly Paz\,\email\:\ventastest.com\,\telefono\:\233774983\,\observaciones\:\\,\totalizar\:true,\mostrar_impuesto\:false,\credito\:true,\creador\:\jplata\,\creador_nombre\:\JAIME ANTONIO\,\creador_apellido\:\PLATA BOGOYA\,\cargo_asesor\:\GERENTE\,\email_asesor\:\dyehutygmail.com\,\productos\:[{\modelo\:\BOLSA ACCESORIOS ESTANDAR\,\tela\:\KAMBREL O POLITEX DE 70GR\,\cantidad\:\3000\,\destino\:186,\destino_label\:\CALDAS - NEIRA\,\ancho\:22,\alto\:33,\fuelle\:0,\manija\:0,\estampado_cara_frontal\:\1 TINTA MATE\,\estampado_cara_posterior\:\2 TINTAS MATE\,\valor_bolsa\:\1605\,\valor_iva\:\304\,\iva\:19,\accesorios_modelo\:[{\id\:\1\,\nombre\:\CORDON ESTANDAR SENCILLO; PARA BOLSAS CIERRE CORDON O BOLERO.\,\ancho\:0,\alto\:0}],\accesorios_adicionales\:[{\id\:\37\,\nombre\:\ESTE ACCESORIO SE USA PARA COLOCARLE BASE DE CARTON FORRADA EN EL MISMO MATERIAL A LA BOLSA. NORMALMENTE SE USA PARA LA BOLSA ANCHETA; PERO SE LE PUEDE COLOCAR A CUALQUIER BOLSA.\,\ancho\:0,\alto\:0},{\id\:\23\,\nombre\:\BOLSILLO EN EL MISMO MATERIAL DE LA BOLSA; SE USA PARA LA BOLSA AUTOGUARDABLE TIPO BILLETERA; O PARA CUALQUIER BOLSA QUE SE DESEE LLEVE UN BOLSILLO. EN LOS CAMPOS ALTO Y ANCHO; INDIQUE LAS DIMENSIONES DE ÉSTE BOLSILLO.\,\ancho\:20,\alto\:20},{\id\:\36\,\nombre\:\ESTE ACCESORIO ES UNA CAPA QUE SE COLOCA ENCIMA DEL CUBREVESTIDO. EN EL CAMPO ALTO: INDIQUE EL ALTO DE LA CAPERUZA.\,\ancho\:0,\alto\:22}],\cantidadesReporte\:[{\cantidad\:3000,\valor_bolsa\:1605,\valor_iva\:0,\subtotal\:4815000,\total\:4815000}]}]};//NOT WORKString clientData {\nombre_cliente\:\MARCA DE PRUEBA\,\contacto\:\Harry\,\email\:\harrytest.com\,\telefono\:\4553773773\,\observaciones\:\\,\totalizar\:false,\mostrar_impuesto\:true,\credito\:false,\creador\:\jvalderrama\,\creador_nombre\:\JUAN CARLOS\,\creador_apellido\:\VALDERRAMA GONZALEZ\,\cargo_asesor\:\desarrollador\,\email_asesor\:\dyehutygmail.com\,\telefono_asesor\:\2373719 EXT 1147 - 5138731 - 8033205\,\celular_asesor\:\3149008989\,\productos\:[{\modelo\:\BOLSA ACCESORIOS CIERRE ESPECIAL\,\tela\:\KAMBREL O POLITEX DE 70GR\,\cantidad\:\300,600,1000\,\destino\:4,\destino_label\:\ANTIOQUIA - BARBOSA\,\ancho\:23,\alto\:44,\fuelle\:0,\manija\:0,\estampado_cara_frontal\:\1 TINTA MATE\,\estampado_cara_posterior\:\SIN ESTAMPADO\,\estampado_fuelle_izquierdo\:\SIN ESTAMPADO\,\estampado_fuelle_derecho\:\SIN ESTAMPADO\,\estampado_fuelle_base\:\SIN ESTAMPADO\,\valor_bolsa\:\1543,1202,1151\,\valor_iva\:\293,228,218\,\iva\:19,\accesorios_modelo\:[],\accesorios_adicionales\:[{\id\:\37\,\nombre\:\BASE DE CARTON FORRADO\,\descripcion\:\ESTE ACCESORIO SE USA PARA COLOCARLE BASE DE CARTON FORRADA EN EL MISMO MATERIAL A LA BOLSA. NORMALMENTE SE USA PARA LA BOLSA ANCHETA,PERO SE LE PUEDE COLOCAR A CUALQUIER BOLSA.\,\ancho\:2,\alto\:0}],\cantidadesReporte\:[{\cantidad\:300,\valor_bolsa\:1543,\valor_iva\:87900,\subtotal\:462900,\total\:550800},{\cantidad\:600,\valor_bolsa\:1202,\valor_iva\:136800,\subtotal\:721200,\total\:858000},{\cantidad\:1000,\valor_bolsa\:1151,\valor_iva\:218000,\subtotal\:1151000,\total\:1369000}]},{\modelo\:\BOLSA ACCESORIOS CIERRE ESPECIAL\,\tela\:\YUTE LAMINADO COLOR CRUDO\,\cantidad\:\300,600,1000\,\destino\:4,\destino_label\:\ANTIOQUIA - BARBOSA\,\ancho\:23,\alto\:44,\fuelle\:0,\manija\:0,\estampado_cara_frontal\:\1 TINTA MATE\,\estampado_cara_posterior\:\SIN ESTAMPADO\,\estampado_fuelle_izquierdo\:\SIN ESTAMPADO\,\estampado_fuelle_derecho\:\SIN ESTAMPADO\,\estampado_fuelle_base\:\SIN ESTAMPADO\,\valor_bolsa\:\6439,5016,4830\,\valor_iva\:\1223,953,917\,\iva\:19,\accesorios_modelo\:[],\accesorios_adicionales\:[{\id\:\37\,\nombre\:\BASE DE CARTON FORRADO\,\descripcion\:\ESTE ACCESORIO SE USA PARA COLOCARLE BASE DE CARTON FORRADA EN EL MISMO MATERIAL A LA BOLSA. NORMALMENTE SE USA PARA LA BOLSA ANCHETA,PERO SE LE PUEDE COLOCAR A CUALQUIER BOLSA.\,\ancho\:2,\alto\:0}],\cantidadesReporte\:[{\cantidad\:300,\valor_bolsa\:6439,\valor_iva\:366900,\subtotal\:1931700,\total\:2298600},{\cantidad\:600,\valor_bolsa\:5016,\valor_iva\:571800,\subtotal\:3009600,\total\:3581400},{\cantidad\:1000,\valor_bolsa\:4830,\valor_iva\:917000,\subtotal\:4830000,\total\:5747000}]},{\modelo\:\BOLSA ACCESORIOS CIERRE ESPECIAL\,\tela\:\TELA DE SUBLIMAR EN KAMB. DE 70GR\,\cantidad\:\300,600,1000\,\destino\:4,\destino_label\:\ANTIOQUIA - BARBOSA\,\ancho\:23,\alto\:44,\fuelle\:0,\manija\:0,\estampado_cara_frontal\:\1 TINTA MATE\,\estampado_cara_posterior\:\SIN ESTAMPADO\,\estampado_fuelle_izquierdo\:\SIN ESTAMPADO\,\estampado_fuelle_derecho\:\SIN ESTAMPADO\,\estampado_fuelle_base\:\SIN ESTAMPADO\,\valor_bolsa\:\1906,1485,1423\,\valor_iva\:\362,282,270\,\iva\:19,\accesorios_modelo\:[],\accesorios_adicionales\:[{\id\:\37\,\nombre\:\BASE DE CARTON FORRADO\,\descripcion\:\ESTE ACCESORIO SE USA PARA COLOCARLE BASE DE CARTON FORRADA EN EL MISMO MATERIAL A LA BOLSA. NORMALMENTE SE USA PARA LA BOLSA ANCHETA,PERO SE LE PUEDE COLOCAR A CUALQUIER BOLSA.\,\ancho\:2,\alto\:0}],\cantidadesReporte\:[{\cantidad\:300,\valor_bolsa\:1906,\valor_iva\:108600,\subtotal\:571800,\total\:680400},{\cantidad\:600,\valor_bolsa\:1485,\valor_iva\:169200,\subtotal\:891000,\total\:1060200},{\cantidad\:1000,\valor_bolsa\:1423,\valor_iva\:270000,\subtotal\:1423000,\total\:1693000}]}]};new PDFGenerator().createPdf(DEST, clientData);}public void createPdf(String dest, String data) throws IOException {data data.replace(,);JSONObject jsonPeticion new JSONObject(data);JSONArray jsonProductos jsonPeticion.getJSONArray(productos);boolean mostrarIva jsonPeticion.getBoolean(mostrar_impuesto);NumberFormat formateador NumberFormat.getInstance(new Locale(us, US));formateador.setMinimumFractionDigits(0);formateador.setMaximumFractionDigits(0);System.out.println(JSON ARRAY...... jsonProductos);System.out.println(JSON ARRAY LENGTH...... jsonProductos.length());PdfDocument pdf new PdfDocument(new PdfWriter(dest));try (Document document new Document(pdf)) {document.setMargins(120, 36, 120, 36);document.add(new Paragraph(ESPECIFICACIONES TÉCNICAS DEL PRODUCTO).setTextAlignment(TextAlignment.CENTER).setBold());for (int i 0; i jsonProductos.length(); i) {Text textoTinta new Text(Tinta Utilizada);textoTinta.setUnderline(1.5f, -1);textoTinta.setTextAlignment(TextAlignment.LEFT);Text textoTintaDescripcion new Text(: Las tintas que usamos son 100% Ecológicas y Base Agua, nuestra visión no es solo comercial sino de responsabilidad con el medio ambiente y social.);Text textoNota new Text(NOTA: ).setBold();textoNota.setTextAlignment(TextAlignment.LEFT);Text textoNotaDescripcion new Text(Señor cliente por favor tener presente, que en el momento de la facturación, debemos facturar todo lo que salga, normalmente puede salir un 5% de más o de menos.);document.add(new Paragraph(textoTinta).add(textoTintaDescripcion).setTextAlignment(TextAlignment.JUSTIFIED));document.add(new Paragraph(textoNota).add(textoNotaDescripcion).setTextAlignment(TextAlignment.JUSTIFIED));String IMG C:\\path\\images\\logoSmallBiobolsa.png;String FONT C:\\path\\COMIC.ttf;ImageData imageData ImageDataFactory.create(IMG);Image pdfImg new Image(imageData);pdfImg.setWidth(70);pdfImg.setHeight(77);Color verdeBioBolsa new DeviceRgb(5, 94, 27);PdfFont comic PdfFontFactory.createFont(FONT, true);System.out.println(MARGENES SUPERIOR..... document.getTopMargin());System.out.println(MARGENES INFERIOR..... document.getBottomMargin());System.out.println(MARGENES IZQUIERDO..... document.getLeftMargin());System.out.println(MARGENES DERECHO..... document.getRightMargin());Paragraph headerImg new Paragraph().add(pdfImg);Paragraph headerNombreEmpresa new Paragraph(BIO BOLSA S.A.S).setFont(comic).setFontSize(20).setBold().setFontColor(verdeBioBolsa);Paragraph headerSlogan new Paragraph(!!Una Empresa con Conciencia Ambiental!!).setFont(comic).setFontSize(14).setFontColor(verdeBioBolsa);Paragraph headerRegimen new Paragraph(Régimen Común).setFont(comic).setFontSize(12).setBold().setFontColor(verdeBioBolsa);Paragraph headerIdentificador new Paragraph(NIT: 900.390.537-1).setFont(comic).setFontSize(12).setFontColor(verdeBioBolsa);Paragraph footerTelefonosAsesor new Paragraph(Tels: (57) (1) 7137516 EXT 1142 – 7138731 - 2033205 Cel: (57) 300 275 45 51).setFontSize(10).setFontColor(verdeBioBolsa);Paragraph footerWebEmail new Paragraph(Web: www.biobolsa.com.co E-mail: pchaconbiobolsa.com.co).setFontSize(10).setFontColor(verdeBioBolsa);Paragraph footerDireccion new Paragraph(Fábrica CRA 57 NO 45 A – 52 SUR LA SEVILLANA).setFontSize(10).setFontColor(verdeBioBolsa);Paragraph footerCiudad new Paragraph(Bogotá D.C, Colombia).setFontSize(10).setFontColor(verdeBioBolsa);for (int i 1; i document.getPdfDocument().getNumberOfPages(); i) {System.out.println(PAGINA DEL PDF i);try {Rectangle pageSize document.getPdfDocument().getPage(i).getPageSize();//Rectangle pageSize document.getPdfDocument().getPage(i).getMediaBox();System.out.println(RECTANGLE..... pageSize);} catch (Exception e) {// TODO: handle exceptionSystem.out.println(EXCEPCION RECTANGULO... e);}}}}}问题来源Stack Overflow
http://www.sadfv.cn/news/186948/

相关文章:

  • 建设交通职业技术学院招聘信息网站深圳设计大厦
  • 威海建设网站免费招聘网站哪个好
  • 手机网站视频怎么下载陕西省建设厅网站官网企业月报
  • 济南个人网站建设网站建设之前必须 域名备案
  • 卫计网站建设工作总结做网站外包哪家好
  • iis网站找不到网页如何百度到自己的网站
  • 网站宣传与推广的指导思想网站开发人员绩效考核
  • 涡阳做网站wordpress 登录用户信息
  • 网站建设代理费用开发网站怎样注册公司
  • 网站制作模板代码利用高权重网站做关键词
  • 如何做淘宝店网站网页制作免费下载
  • 大型门户网站建设多少钱泰州网站建设工作
  • 网站建设div可拖拽布局农资网络销售平台
  • 服务器不能访问网站如何策划网络推广方案
  • 开发一个网站系统报价怎么建设商业网站
  • 廊坊市建设局网站品牌推广手段
  • 长沙如何做百度的网站郑州外贸网站制作
  • 昆明市建设厅官方网站适合企业网站的cms
  • 新手如何做网站的教程武安企业做网站推广
  • 在郑州网站建设网上书店网站建设实训报告总结
  • 自己建设网站怎么盈利网站建设定金合同范本
  • 手机网站建设创意新颖开发软件应用公司
  • 厦门市建设局网站 限价房网站建设 sam大叔排名三天上首页
  • 苏州网站搜索引擎优化河南网站建设华企祥云
  • 网站建设网站营销网站托管一体化成都网站制作公司
  • 连云港市城乡建设管理局网站wordpress默认文章模式
  • 推荐坪山网站建设wordpress采用的mvc
  • 中学生做的安全作业网站学术会议网站建设
  • 怎么让付费网站免费老铁外链
  • 网站关键词优化建议站酷海报设计图片