Laravel-excel: [PERGUNTA] CSS é compatível com visualizações blade?

Criado em 23 mar. 2018  ·  29Comentários  ·  Fonte: Maatwebsite/Laravel-Excel

  • [] Capaz de reproduzir o comportamento fora do seu código, o problema é isolado no Laravel Excel.
  • [] Verificou se seu problema ainda não foi arquivado.
  • [] Foi verificado se nenhum PR foi enviado para corrigir este problema.

Versões

  • Versão PHP: 7.0
  • Versão do Laravel: 5.5
  • Versão do pacote: 3.0

Descrição

Estou usando este código:

<html>
    <h1>{{ $report->title }}</h1>
    <br/>
    <h2>{{ $report->description }}</h2>
    <br/>
    <p>{{ __('excel.dateLabel') }} {{ $date }}</p>
    <br/>
    <table>
        <thead>
            <tr>
                <th>{{ __('excel.firstColumn') }}</th>
                <th>{{ __('excel.secondColumn') }}</th>
                <th>{{ __('excel.thirdColumn') }}</th>
                <th>{{ __('excel.fourthColumn') }}</th>
            </tr>
        </thead>
    </table>
</html>

Mas quando eu usaria tag de classe ou estilo, apenas trabalho de cor de fundo. Cor, espessura da fonte ... não está funcionando.

Passos para reproduzir

<html>
    <h1>{{ $report->title }}</h1>
    <br/>
    <h2>{{ $report->description }}</h2>
    <br/>
    <p>{{ __('excel.dateLabel') }} {{ $date }}</p>
    <br/>
    <table>
        <thead>
            <tr>
                <th style="font-weight : bold">{{ __('excel.firstColumn') }}</th>
                <th>{{ __('excel.secondColumn') }}</th>
                <th>{{ __('excel.thirdColumn') }}</th>
                <th>{{ __('excel.fourthColumn') }}</th>
            </tr>
        </thead>
    </table>
</html>
help wanted

Todos 29 comentários

3.0 não suporta mais estilização por meio de visualizações de lâmina. Você deve usar o método PhpSpreadsheet $worksheet->getStyle('B2:G8') para fazer isso.

Leia em nossos documentos como chamar métodos de planilha PhpSpreadsheet: https://laravel-excel.maatwebsite.nl/docs/3.0/export/extending

@patrickbrouwers usando

@ shadoWalker89 causava muitos problemas e era difícil de manter. Nós nunca o usamos, pois também prejudicava o desempenho. Não iremos implementá-lo novamente e sugerir que todos usem apenas os métodos de estilo de planilha PhpSpreadsheet.
Se alguém da comunidade quiser mantê-lo, sugiro criar um pacote para o HtmlReader. Estou feliz em possibilitar a troca do HtmlReader por uma implementação personalizada / própria.

Vou reabri-lo e ver se alguém quer ajudar.

Estou tentando criar um arquivo a partir de um modo de exibição, mas também aplico uma borda espessa em algumas das células, estou usando o exemplo aqui: https://laravel-excel.maatwebsite.nl/docs/3.0/export/extending .

Você seria capaz de adicionar uma linha lá para deixar mais claro como conseguir algo assim? Estou certo de que muitas pessoas se beneficiariam com esse exemplo.

Eu olhei toda a documentação muitas vezes, mas ainda estou perplexo :(

Obrigado!

@LastxTemplar você deve verificar a documentação do PhpSpreadsheet (https://phpspreadsheet.readthedocs.io/en/develop/), não podemos re-documentar todos os métodos que o PhpSpreadsheet oferece.

ok, você poderia pelo menos me dar algumas dicas sobre como obter os dados de uma visão para o exemplo em sua documentação? Estou lendo a planilha phpspreadsheet e a documentação do laravel-excel lado a lado e ainda é difícil para mim entender como posso fazer isso.

Tentarei contribuir com alguns exemplos mais práticos para a documentação depois disso, se você aceitar. Os documentos no momento são muito técnicos e é difícil obter um início rápido dada a informação.

Eu não tenho certeza do que você quer dizer? https://laravel-excel.maatwebsite.nl/docs/3.0/export/from-view é muito prático?

Como estilizar a visualização dinâmica do Blade sem HTMLReader? Porque com os métodos de extensão não sou capaz de saber onde estão meus dados com a linha ou coluna correta: /

Exportar, abrir, verificar as coordenadas, usar as coordenadas? Não soa como ciência do foguete para mim?

https://phpspreadsheet.readthedocs.io/en/develop/topics/recipes/#styles

Não é possível exportar e abri-lo para verificar as coordenadas porque cada exportação é única: /

Nesse caso, não há nada que eu possa fazer para ajudar. Você terá que desenvolver algo sozinho para lidar com isso. Como mencionado antes: qualquer pessoa é livre para manter o antigo HtmlReader por conta própria.

Por que h1, h2 ou h3 funcionam? :)

Verifique o HtmlReader do PhpSpreadsheet. Tudo que está lá é compatível com o uso imediato. Não implementamos um personalizado.

O HtmlReader do PhpSpreadsheet não faz referência a isso. Você tem um URL, por favor? O site PhpSpreadsheet disse ter uma limitação, mas não está listado: /

Muito obrigado :)

Não sou um cara de sorte: a cor de / styles não funciona no Excel (macOS e Windows) só funciona em Preview no macOS e Numbers: /

@patrickbrouwers

Eu não tenho certeza do que você quer dizer? https://laravel-excel.maatwebsite.nl/docs/3.0/export/from-view é muito prático?

Eu quis dizer prático como em casos de uso mais específicos. Por exemplo, se eu quiser usar a preocupação FromView, mas também adicionar algum estilo posteriormente às células A3 a D5, como eu faria isso? Posso adicionar as preocupações FromView e WithEvents ao mesmo tempo?

Sim, você pode usar quase qualquer preocupação ao mesmo tempo. A documentação tem vários exemplos de combinação de interesses.

Agradeço muito a sua ajuda, mas não parece funcionar para mim, devo estar faltando alguma coisa.
Se você tivesse algum tempo em algum momento, você seria capaz de dar uma olhada nesta essência ?

Talvez esteja faltando algo óbvio aí, quero ver pelo menos algum tipo de formatação, quando abro o arquivo gerado com o MS Excel até a Orientação ainda é Retrato.

Sua essência não importa os namespaces das classes de eventos. Portanto, é lógico que não funcione. Veja https://laravel-excel.maatwebsite.nl/docs/3.0/export/extending para a lista de eventos disponíveis.

Obrigado Patrick, isso fez o truque!

Fechando isso porque ninguém parece ansioso para apoiá-lo;)

Olá, como posso lidar com linhas dinâmicas em estilo negrito? Tenho que listar algumas linhas agrupadas e, antes de cada grupo, preciso adicionar uma legenda em negrito. O fato é que não sei quantas linhas haverá por grupo, então isso não funcionará, pois não sei exatamente a posição das linhas:

$event->sheet->getStyle('A1:N1')->applyFromArray([ 'font' => [ 'bold' => true ] ]);

Os estilos podem ser definidos facilmente. Para fazer isso, defina estilos para cada tag ou td. Por exemplo, você pode escrever estilos em uma variável e inserir a variável no atributo de estilo nas tags. Assim, você pode facilmente criar bordas e outros estilos.

obrigada

onde você sugere colocar todas as macros?

provedor de serviço

Esta página foi útil?
0 / 5 - 0 avaliações

Questões relacionadas

octoxan picture octoxan  ·  3Comentários

rossjcooper picture rossjcooper  ·  3Comentários

ellej16 picture ellej16  ·  3Comentários

amine8ghandi8amine picture amine8ghandi8amine  ·  3Comentários

matthewslouismarie picture matthewslouismarie  ·  3Comentários