kkkkkkkkk
;D
bom vamos lá..
Nesse post vou ensinar a vocês como determinar qual Frame ou Mc você deseja imprimir.
Primeiramente crie um MovieClip e o istancie como 'impressao_mc' (sem as aspas)
Agora no nosso primeiro frame cole o seguinte código:
*no frame não no MC
>CODE <<>
// Criando a variável de instância com o nome de 'impressao'
var impressao:PrintJob = new PrintJob();
// Criando uma instância e a chamei de resultado. Ela não irá retornar nenhum valor, por que a ela dei o método start() para começar a impressão.
var resultado:Boolean = impressao.start();
if (resultado) {
trace ("Imprimindo...");
// Aqui é onde eu chamo o MC ou o Frame desejado para impressão.
impressao.addPage("impressao_mc");
}else{
trace ("Erro ao imprimir");
}
É importante saber que o 'addPage' segue essa lógica de sintaxe para funcionar perfeito.
>CODE <<>
impressao.addPage(target, printArea, options, frameNumber);
ela pode até ser costumizada, não sendo necessário seguir o padrão, sendo opcional o uso de alguns desses parâmetros exceto o target.
Conheca os parâmetros:
.target - Esse parâmetro define qual o alvo será atingido, se você digitar números o compilador do filme vai entender que você está definindo por níveis de camadas, mas se for digitado strings como "impressao_mc" (sem aspas) ele vai entender que será o movieclip instanciado que será impresso.
.printArea - Esse parâmetro é especificado por 4 propriedades internas, a 'xMin', 'xMax', 'ymin', 'yMax' (sem as aspas). Essas propriedades vai determinar a área que será impressa dentro do alvo mencionado.
.options - Nas opções você define se você quer que ele imprima como bitmap ou vetor, nesse caso ele é um valor booleano definido pela palavra chave printAsBitmap, da qual vai ser impressa e se igualada a true vai imprimir bitmap se false imprime como vetor. Padrão é imprimir como vetor
.frameNumber - Imprime o Frame especificado. *lembrando que ele aceita apenas por números de frames e não em labels.
Mais abaixo outros exemplos mais complexos:
Ultilizando .options e .frameNumber
>CODE <<>
var impressao:PrintJob = new PrintJob();
var resultado:Boolean = impressao.start();
if (resultado) {
minhaimpressao.addPage("imprima_mc", null, {printAsBitmap:true}, 5);
} else {
trace ("Impressão cancelada pelo usuário");
}
Utilizando .printArea
>CODE <<>
var impressao:PrintJob = new PrintJob();
var resultado:Boolean = impressao.start();
if (resultado) {
minhaimpressao.addPage("imprima_mc", 0, {xMin:50, xMax:134, yMin:21, yMax:160});
} else {
trace ("Impressão cancelada pelo usuário");
}
Bom pessoal é isso...
Espero que ajude ;D
Até mais!!
4 comentários:
não funciona eu testei..........
Bom dia amigo, você deve ter se equivocado com alguma informação ou na estrutura do seu código, cabei de testar no 'Adobe Flash CS3 Professional' e rodo tudo perfeito.
Talvez se você postar seu código eu possa te ajudar com seu problema!
Obrigado...
;)
Bom dia estou procurando um codigo em ActionScript que me permita comandar a impressão direto pelo flash.
Ta dificil viu meus conhecimentos nessa area são restritos se vc puder me ajudar agradeço.
No site estamos trabalhando com arquivo externo a extensão é swf
BOm dia Luciene,
Esse post o código esta literalemten pronto, só você copiar e colar ele no seu flash. Creio que não terá nenhuma dificuldade.
Caso precise de ajuda pode me add no talk> laion.camargo@gmail.com
ou post seu código a sua dúvida especificamente no que você não esta conseguindo fazer que eu ajudo a resolver.
até mais!!!
Postar um comentário