Pergunta
Eu quero usar iText para gravar dados em pdf.
Monta que eu adicionei são
- iTextdotNET.dll
- Gnu.Classpath.Core.dll
Mas o problema que estou enfrentando é
- Erro 1 O tipo 'java.io.OutputStream' é definido em um conjunto que não é referenciado. Você deve adicionar uma referência ao assembly 'vjslib, versão = 1.0.5000.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a'.
- de erro 2 O tipo 'Java.IO.Serializable' é definido em um conjunto que não é referenciado. Você deve adicionar uma referência ao assembly 'vjslib, versão = 1.0.5000.0, Culture = neutral, PublicKeyToken = b03f5f7f11d50a3a'.
O que eu entendi é:. Ela exige j #
Agora, o que fazer?
Solução
Novas versões da versão .NET da iText ahve apenas um único DLL chamado itextsharp.dll com nenhuma dependência em bibliotecas # J ou qualquer coisa assim.
BTW Se você estiver fazendo qualquer coisa não-trivial, olhar para a lista de discussão e ordem agora o livro (o livro vai fundo, mas continua acessível)
Outras dicas
Há (pelo menos) dois .NET portos de iText. Parece que você tem iText.NET . Pegue a última versão do iTextSharp e suas preocupações de dependência deve ser longo.
Eu sugiro usar iTextSharp em vez de iText.Net. iText.Net não foi atualizado em muito tempo, enquanto iTextSharp é relativamente up-to-date e funciona perfeitamente com as versões mais recentes do .NET Framework.
Qual versão do quadro é o seu projeto alvejando? Parece que ele está tentando usar o .NET 1.1 versões das bibliotecas.
Isso gnu.classpath.core.dll faz parte de IKVM, não é? Você não deve precisar que, se você quiser usar a versão Java iText. (E se você fizer isso, instalar um JRE e definir o caminho a ele corretamente) Você está tentando usar a versão .Net, assim que remova essa referência e ver se funciona.