-
Similar Content
-
By pablomarttiins
Olá pessoal, estou com o seguinte cenário:
Realizo uma requisição ajax, que me retorna um arquivo zipado do servidor, ao chegar no lado do cliente, descompacto o arquivo com a lib JSZIP, após a descompactação, tenho um objeto json, com todas as informações do PDF.
Existe alguma forma converter este objeto json para PDF e posteriormente, abri-lo em uma nova aba do navegador?
-
By Sapinn
Salve! Dúvida cruel que eu preciso resolver para o meu projeto. Foi requerido que eu permitisse que as redações feitas no meu projeto fossem mostradas em arquivos pdf para download e para impressão já consigo gerar tal arquivo o único problema é que nas correções que também poderão ser impressas eu mostro os erros de um forma para que eles vejam destacado. Tudo isso funciona, o único problema é que tá dando umas quebras de página no pdf. Muito mais muito provavelmente seja por causa do vetor ou seja a forma que eu esteja chamando o mesmo .
Vejam meu codigo:
<?php //inclui o mpdf include("mpdf60/mpdf.php"); //essa função verifica dois textos para verem se eles são iguais function get_str_difs($str1, $str2) { $first = explode(" ", $str1); $second = explode(" ", $str2); $arrDif1 = array_diff($first,$second); $arrDif2 = array_diff($second,$first); $old = ''; $new = ''; foreach($first as $word) { if(in_array($word,$arrDif1)) { //aqui ele marca o que for diferente $old .= "<span style='color: red; background-color:#dedede;'>" . $word . "</span> "; continue; } $old .= $word . " "; } foreach($first as $word) { if(in_array($word,$arrDif1)) { //aqui ele marca o que for diferente $new .= "<span style='color: green;background-color:#dedede;'> " . $word . " </span>"; continue; } $new .= $word . " "; } return array('old' => $old, 'new' => $new); } //esses são dois textos usado como exemplo de uma redação $str1 = ' Em virtude do contexto histórico, é visível que o desmatamento em excesso no Brasil é um desafio que já vem sendo enfrentado há muito tempo, porém, ainda existem bastante casos que afetam gravemente, colocando em desequilíbrio todo o sistema natural. É fundamental avaliar o corte das árvores de grande porte na floresta Amazônica, principalmente para a criação de gado bovino e derivados da madeira extraída. O espaço preenchido e o material retirado são pontos fundamentais para os grandes fazendeiros e as indústrias em meios econômicos. As queimadas são usadas para limpar áreas, muitas vezes acabam saindo de controle, gerando os incêndios florestais. Elas destroem regiões propícias à vida animal, tornando o lugar inabitável. Segundo o G1, do dia 1 de janeiro até 11 de setembro do ano passado, foi registrado um aumento de 43% das queimas. O desmatamento ilegal esta presente e intenso. Muitas vezes, por se tratar de uma grande região de floresta, se torna difícil identificar e punir os infratores, que acabam desmatando uma taxa a mais que a recomendada. Portanto, é preciso de uma atenção maior por parte do governo, punindo severamente os que exercem o desmatamento ilegal, além de recrutar mais soldados para vigiarem a área florestal. As indústrias desenvolverem novos materiais para servirem como matérias-primas dos seus produtos, como os recicláveis. É importante as ONGS fazerem movimentos, sejam palestras ou campanhas de conscientização da população. '; $str2 = ' Em virtude do contexto histórico, é visível que o desmatamento em excesso no Brasil é um desafio que já vem sendo enfrentado há muito tempo, porém, ainda existem bastante casos que afetam gravemente, colocando em desequilíbrio todo o sistema natural. É fundamental avaliar o corte das árvores de grande porte na floresta Amazônica, principalmente para a criação de gado bovino e derivados da madeira extraída. O espaço preenchido e o material retirado são pontos fundamentais para os grandes fazendeiros e as indústrias em meios econômicos. As queimadas são usadas para limpar áreas, muitas vezes acabam saindo de controle, gerando os incêndios florestais. Elas destroem regiões propícias à vida animal, tornando o lugar inabitável. Segundo o G1, do dia 1 de janeiro até 11 de setembro do ano passado, foi registrado um aumento de 43% das queimas. O desmatamento ilegal está presente e intenso. Muitas vezes, por se tratar de uma grande região de floresta, se torna difícil identificar e punir os infratores, que acabam desmatando uma taxa a mais que a recomendada. Portanto, é preciso de uma atenção maior por parte do governo, punindo severamente os que exercem o desmatamento ilegal, além de recrutar mais soldados para vigiarem a área florestal. As indústrias desenvolverem novos materiais para servirem como matérias-primas dos seus produtos, como os recicláveis. É importante as ONGS fazerem movimentos, sejam palestras ou campanhas de conscientização da população. '; $difs = get_str_difs($str1, $str2); //Algumas variaveis criadas para o exemplo $nome = 'Fulano'; $nota = '950,00'; $html = " <h1>CORREÇÃO</h1> <h1>Tema: O DESMATAMENTO COMO PROBLEMA NO BRASIL</h1> <div> <img src='aluno.jpg' width='80px' height='80px' class='img'> </div> <div> <h3>Feito por: $nome/NOTA: $nota</h3> <p style='font-size:12px;'><i>Aluno do 3° ano A / Manhã </i></p> </div> <textarea class='notebook'> ".$difs['new']." </textarea> <footer> <p><b>©Minha Redação Nota Mil </b></p> </footer> " ; $mpdf=new mPDF(); $mpdf->SetDisplayMode('fullpage'); $css = file_get_contents("css/estilo.css"); //imprime no pdf as informações. $mpdf->WriteHTML($css,1); $mpdf->WriteHTML($html); $mpdf->Output(); exit; ?>
Vou deixar aqui as imagens de como está fincando o pdf com as quebras de páginas. Alguma ideia de como arrumar
-
By Alex Dias
Amigos, estou com uma grande dificuldade com UPLOAD de arquivos PDF´S , o servidor informa que o upload permitido lá é de 64MB o arquivo que envio é de 54MB, no meu script está configurado sem limites de tamanho do arquivo.
maxsize: 0, // maximum file size in bytes (0 = any size)
A empresa informa que é recomendação do CPANEL manter o limite máximo de 64MB, porém eles fizeram uma manobra de criar o arquivo .htaccess, segue o email que recebi da empresa:
Para não alterar a configuração padrão recomendada pelo suporte do cPanel, subimos para a conta um arquivo .htaccess com a configuração abaixo. Veja se funcionou por favor.
php_value memory_limit 128M
php_value upload_max_filesize 64M
php_value post_max_size 64M
Porém isso não está resolvendo.
Alguém poderia me ajudar com alguma opinião do que posso fazer?
Desde já agradeço a ajuda dos amigos do Fórum.
-
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?
-