Jump to content
Mateus Inácio

Problema ao salvar em PDF

Recommended Posts

O maior problema foi a forma como você trabalhou. 

Imagino que seu trabalho não seja só imagem... se for está certo, pode ser feito só no PhotoShop mas se não...

Fazer uma trabalho todo no Photoshop para mandar para a gráfica é um erro grosseiro (desculpe pela falta de lisura).

 

Acontece que este termo PDF X1A é uma normativa. Uma série de exigência que um arquivo deve conter. 

Por exemplo, as cores obrigatoriamente devem estar em CMYK. Se tiver uma cor spot, já não é X1A, vai ser um X3. 

 

Assim, se seu desenho estiver em RGB, já pode ser um problema.

Se seu desenho não tiver 300 ppi, outro problema.

 

Uma rápida busca no google resulta em vários sites com apostilas para PDF X1A, veja:

 

https://issuu.com/bytestypes/docs/cartilha_pdfx-1a_2a_edicao

http://publiedglobo.globo.com/pdfs/Cartilha_X1a_ABTG.pdf

http://institucional.zapgrafica.com.br/dicas-especiais/configuracao-do-pdf-x-1a/

 

Assim, perceba que é algo trabalhoso e que demanda um estudo mais profundo do que simplesmente "Salvar como X1A".

Não desamine. Apenas perceba que é uma área riquíssima e que, para ser um profissional de destaque, é preciso esforço e muito estudo.

 

Abraços.

Share this post


Link to post
Share on other sites

Oi Mateus, rapaz, é uma imagem só? Mais que uma página?

 

Faça um favor, vá em IMAGENS > MODE > CMYK. 
 

O que você fará é mesclar todas as suas camadas, surigo que faça isso por partes da sua arte, e não mescle tudo junto em uma só layer.

 

Pra fazer isso, você pode criar grupos nas camadas da sua arte, por exemplo agrupar tudo que consta no rodapé, e fazer o mesmo com tdas as outras partes da arte. 

 

Isso te dará vários grupos de efeitos, correto? Agora é só clicar com o botão direito do mouse em cima de um dos grupos, e colocar MESCLAR. Isso vai juntar tudo em uma layer só, o que vai transformar seu arquivo em uma imagem sem todos os efeitos colocados, e agora sim o X1A deverá aceitar seu arquivo.

 

A ideia é ao invés de sombras, efeitos nas layers, você tenha apenas a imagem, assim o PDF sairá sem problemas.

 

Se nada der certo e for algo muito urgente, salve a sua criação em uma imagem, depois de colocar o modo CMYK, e aí use outro programa pra montar seu PDF, sugiro o Illustrator ou CorelDRAW.

 

Não tem? Vai em www.smallpdf.com e vê se lá você consegue montar PDF com várias imagens, mas lembre-se que só pode usar 3 vezes ao dia grátis essa ferramenta, então use com moderação! Kkkk

 

E cara, se tiver com esse problema, da uma olhada nesse vídeo e segue esses passos pra otimizar teu photoshop, não sei qual teu computador e versão do PS, mas é sempre bom otimizar o programa que edita arquivos tão pesados!

 

 

Abraço.

 

 

 

 

 

 

Share this post


Link to post
Share on other sites

hmmmm cara... transformar tudo em bitmap? 

Vai serrilhar tudo o que for borda chapada.

 

Isso tem até nome... é A PRAGA RASTER... veja:

 

https://issuu.com/bytestypes/docs/a_praga_raster_p73

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By avelar.avelar
      Turma esta dando erro neste item em negritom, estou tentando , pegar um pdf que esta convertido em base64 e mandando ele gerar o arquivo e gravar numa pasta determinada com um nome, alguem poderias me ajudar? urgente.  Ovbrigado
       
       
      TrablheController.php
       
      public function post(Request $request)
          {
              $rules = [
                  'nome' => 'required|string',
                  'data_nascimento' => 'required|date',
                  'email' => 'required|string',
                  'cpf' => 'required|string',
                  'curriculo' => ['required','mime:/application\/(?:docx||pdf\+xml);base64,.+/'],
              ];
       
              $validator = Validator::make(request()->json()->all(), $rules);
       
              if ($validator->fails()) {
                  return response()->json($validator->errors()->toArray(), 422);
              }
       
              $vagas = Vagas::select('id')->firstOrFail();
       
              $data = $request->json()->all();
       
              $fileB64 = isset($data['curriculo']) ? $data['curriculo'] : false;

              unset($data['curriculo']);
       
              $trabalheconosco = new TrabalheConosco;
       
              foreach (array_keys($rules) as $key) {
                  if (array_key_exists($key, $data)) {
                      $trabalheconosco->{$key} = $data[$key];
                  }
              }
              $trabalheconosco->save();
       
              if ($fileB64) {
                  $trabalheconosco->curriculo = $this->saveFileB64($fileB64, 'images/curriculos', $trabalheconosco->id);
                  $trabalheconosco->save();
              }
       
              $vagas->TrabalheConosco()->save($trabalheconosco);
       
              return response()->json(['data' => $trabalheconosco->toArray()], 201);
          }
       
      Controller.php

          public function saveFileB64($fileB64, $path = '', $id = null): string
          {
              $chunkf = explode(';base64,', $fileB64, 2);
              $chunkf[0] = str_replace('data:', '', $chunkf[0]);
              if (!isset(self::MIMES[$chunkf[0]], $chunkf[1])) {
                  return null;
              }
              $extension = self::MIMES[$chunkf[0]];
              $fileBin = base64_decode($chunkf[1]);
              $time = time();
              $pathName = null;
              do {
                  $pathName = "$path/{$id}_{$time}_"
                      . abs(crc32(uniqid('f', true))) . $extension;
              } while ($this->storage->exists($pathName));
              $this->storage->put(file_put_contents($pathName, $fileBin));
              return $pathName;
          }
       
      ERROR NO INSOMNIA ( 500 INTERNAL SERVER ERROR)
    • By Impermeabilidade
      Alguem conseguiria me mandar um tutorial que me ajudasse na geração de relatorios em pdf?
    • By dutopfave
      Boa Tarde Galera, tenho um sistema de etiqueta que nele vai também código de barras, quando eu mostro na tela, funciona perfeitamente, mais quando gero pra pdf, com a biblioteca mPDF, da erro,  e é justo o código de barras q da esse erro, oq pode ser sera, segue o código de como ta:
       
      <?php require '../../Connections/config.php'; include "../Classes/funcoes.php"; include "cod.php"; $largura = 140; $altura = 130; include("mpdf60/mpdf.php"); // INICIO RECUPERA O ID DA ETIQUETA IMPORTADA $Row_Id_Etiqueta = addslashes($_GET['id_etiqueta']); $Recuperacao_Etiqueta = $pdo->prepare("SELECT * FROM tb_sys_etiqueta WHERE e_id = :e_id"); $Recuperacao_Etiqueta->bindValue(":e_id", $Row_Id_Etiqueta); $Recuperacao_Etiqueta->execute(); if($Recuperacao_Etiqueta->rowCount() > 0){ $Row_Recuperacao_Etiqueta = $Recuperacao_Etiqueta->fetch(); } // FIM RECUPERA O ID DA ETIQUETA IMPORTADA $id_etiqueta = $_GET['id_etiqueta']; $Lista_Etiqueta = "SELECT * FROM tb_sys_etiqueta WHERE e_id = '$id_etiqueta'"; $Lista_Etiqueta = $pdo->query($Lista_Etiqueta); if($Lista_Etiqueta->rowCount() > 0){ $etiqueta_id = $Lista_Etiqueta->fetch(); $qtd = $etiqueta_id['e_volume'] + 1; $qtd2 = $etiqueta_id['e_volume']; for ($i>0; $i<$qtd; $i++) { if($i>$etiqueta_id['e_pagina']){ // verificar se a pagina é menor que 10 if($i<10){ $n = '0'; }else{ $n = ''; } // verificar se a quantidade é menor que 10 if($etiqueta_id['e_volume']<10){ $nq = '0'; }else{ $nq = ''; } $html .= '<div class="etiqueta"> <div class="etiqueta-topo"> <img src="../images/logo.fw.png" width="116" height="52"> </div> <div class="etiqueta-empresa"> <div class="etiqueta-empresa-left"> <h1>GYN</h1> </div> <div class="etiqueta-empresa-right"> <h1>VOL: '.$n.''.$i.'/'.$nq.''.$qtd2.'</h1> </div> </div> <div class="etiqueta-endereco"> <div class="etiqueta-endereco-left"> <span><b>Remetente:</b></span><br/> <span>'.$etiqueta_id['e_remetente'].'</span><br/><br/> <span><b>Destinatário:</b></span><br/> <span>'.$etiqueta_id['e_destinatario'].'</span> </div> <div class="etiqueta-endereco-right"> '.geraCodigoBarra('232323232323').' <br /> '.$etiqueta_id['e_codigo_barras'].' <p>Goiânia/GO</p> </div> </div> </div>'; } } } $mpdf = new mPDF('utf-8', array($largura,$altura)); $css = file_get_contents("css/estilo.css"); $mpdf->WriteHTML($css,1); $mpdf->WriteHTML($html); $mpdf->Output(); exit;  
      a função pra gera o código de barras: cod.php
       
      <?php function geraCodigoBarra($numero){ $fino = 1; $largo = 3; $altura = 50; $barcodes[0] = '00110'; $barcodes[1] = '10001'; $barcodes[2] = '01001'; $barcodes[3] = '11000'; $barcodes[4] = '00101'; $barcodes[5] = '10100'; $barcodes[6] = '01100'; $barcodes[7] = '00011'; $barcodes[8] = '10010'; $barcodes[9] = '01010'; for($f1 = 9; $f1 >= 0; $f1--){ for($f2 = 9; $f2 >= 0; $f2--){ $f = ($f1*10)+$f2; $texto = ''; for($i = 1; $i < 6; $i++){ $texto .= substr($barcodes[$f1], ($i-1), 1).substr($barcodes[$f2] ,($i-1), 1); } $barcodes[$f] = $texto; } } echo '<img src="../images/p.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/b.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/p.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/b.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img '; $texto = $numero; if((strlen($texto) % 2) <> 0){ $texto = '0'.$texto; } while(strlen($texto) > 0){ $i = round(substr($texto, 0, 2)); $texto = substr($texto, strlen($texto)-(strlen($texto)-2), (strlen($texto)-2)); if(isset($barcodes[$i])){ $f = $barcodes[$i]; } for($i = 1; $i < 11; $i+=2){ if(substr($f, ($i-1), 1) == '0'){ $f1 = $fino ; }else{ $f1 = $largo ; } echo 'src="../images/p.gif" width="'.$f1.'" height="'.$altura.'" border="0">'; echo '<img '; if(substr($f, $i, 1) == '0'){ $f2 = $fino ; }else{ $f2 = $largo ; } echo 'src="../images/b.gif" width="'.$f2.'" height="'.$altura.'" border="0">'; echo '<img '; } } echo 'src="../images/p.gif" width="'.$largo.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/b.gif" width="'.$fino.'" height="'.$altura.'" border="0" />'; echo '<img src="../images/p.gif" width="1" height="'.$altura.'" border="0" />'; } ?>  
    • By mancialeo_geo
      Olá pessoal! Trabalho com mapas no qgis e finalizo os layouts no corel, faço omapeamento das areas com vants, mas me aconteceude não mapear toda area tive que completar com imagem de satelite, finalizo ele no qgis exporto como pdf, em programas para abrir pdfs ele abre normal, quando abro o pdf no corel ele coe umapartes das imagens transformando elas em png, como resolvo isso é problema no qgis ou no corel?
    • By s3c0
      Amigos,
       
      boa noite. Estou tentando gerar um simples documento em PDF, porém sempre retorna erro quando adiciono imagem.
       
      Utilizo o componente FPDF.
       
      Abaixo a página que é gerada o erro.
      <!--#include file="fpdf.asp"--> <% dim pdf Dim imagem '// criando o pdf set pdf=CreateJsObject("FPDF") '// aki poderemos adcionar várias funções como titulos padroes para todas as páginasm numeração de páginas e etc. '// montando o corpo do pdf, setando o tipo da folha, tipo de medida e o tamanho da folha pdf.CreatePDF "P","mm","A4" pdf.SetPath("fpdf/") pdf.Open() '// adcionando página pdf.AddPage() pdf.Image "arquivos/background1.jpg",0,0,200 pdf.Close()  
      Alguém saberia me dizer onde está o erro?
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.