Поскольку вы говорите LPT1, я предполагаю, что это для Windows.
Я не вижу никакого решения Java на 100%, вы хотите иметь дело с оборудованием
JNI
Вы можете использовать JNI для вызова некоторой библиотеки Windows, написанной на родном языке (C / C ++ / Delphi), которая экспортирует одну функцию SendData. Вы можете подготовить данные во временном файле (случайное имя файла), и DLL отправит их на принтер, а затем удалит.
В Java вы можете использовать load и loadlibrary для загрузки DLL.
Используйте некоторые готовые решения для преобразования его в USB / LPT