Code – die besten Beiträge

Epson Nadeldrucker einzelne Buchstaben drucken?

Hey Leute!

Ich versuche aus einem Raspberry Pi 4 und meinem EPSON LQ Nadeldrucker eine "Schreibmaschiene" zu bauen. Ist es möglich, statt Line-By-Line jeden Buchstaben den ich eingebe einzeln zu drucken? Ich komme nämlich nicht weiter.

Mein aktuelles Script:

import os
import sys
import termios
import tty


# Pfad zum USB-Drucker
DRUCKER_USB_PORT = '/dev/usb/lp0'


# Funktion, um eine Taste direkt ohne ENTER zu lesen
def lese_taste():
    fd = sys.stdin.fileno()
    alte_einstellungen = termios.tcgetattr(fd)
    try:
        tty.setraw(fd)
        taste = sys.stdin.read(1)  # Liest genau 1 Zeichen
    finally:
        termios.tcsetattr(fd, termios.TCSADRAIN, alte_einstellungen)
    return taste


# Verbindung zum Drucker öffnen
if not os.path.exists(DRUCKER_USB_PORT):
    print(f"Der Drucker wurde nicht unter {DRUCKER_USB_PORT} gefunden.")
    sys.exit(1)


try:
    with open(DRUCKER_USB_PORT, 'wb', buffering=0) as drucker:  # Ungepufferter Modus
        print("Schreibmaschinen-Modus aktiv. Tippe, um zu drucken. Drücke 'Strg+C' zum Beenden.")


        while True:
            taste = lese_taste()  # Zeichen sofort lesen
            if ord(taste) == 3:  # Strg+C beenden
                break
            elif ord(taste) == 13:  # ENTER (Carriage Return)
                drucker.write(b'\r\n')  # Zeilenumbruch senden
            else:
                drucker.write(taste.encode('ascii'))  # Zeichen sofort senden
            drucker.flush()  # Sicherstellen, dass die Daten sofort geschrieben werden


except PermissionError:
    print(f"Keine Berechtigung für Zugriff auf {DRUCKER_USB_PORT}.")
    print("Führe das Skript mit 'sudo' aus oder ändere die Berechtigungen:")
    print(f"  sudo chmod 666 {DRUCKER_USB_PORT}")
except Exception as e:
    print(f"Ein Fehler ist aufgetreten: {e}")
finally:
    print("Verbindung zum Drucker geschlossen.")


Drucker, Code, Programmiersprache, Python, Schreibmaschine, Python 3, Raspberry Pi, ChatGPT

Welche (geheimen) Erkennungszeichen der (Hochgrad-)Freimaurerei kennt ihr?

Die (Hochgrad-)Freimaurerei hat ja keine Geheimnisse, von daher können wir ja hier darüber sprechen.

Die Freimaurerei hat ja so glaube ich 2 Seiten, Licht und Schatten, oder Angels & Demons (wie der Titel von Dan Brown's Buch), d.h. die "Demons" sind für die Macht, Verführung und sowas zuständig, die "Angels" für Aufklärung und Hoffnung (kontrollierte Opposition).

Beide Seiten scheinen wichtig, da man nicht (lange) herrschen kann, wenn man nicht beide Seiten kontrolliert. Deshalb arbeiten beide Seiten hinter den Theaterkulissen zusammen.

Ich kenne diese Zeichen (nicht wundern, ihr seht das ständig in Filmen, Serien, Zeitungen und sozialen Netzwerken - es ist wirklich fast so wie im Film "Sie leben"):

Zeichen & Symbole:

  • Zeigefinger (es ist DAS Symbol, wie am Ende von "The Sign" von Ace of Base (Intro in schwarz-weiß (auch Schach-Symbolik) https://www.youtube.com/watch?v=iqu132vTl5Y
  • Sonne = (Zeigefinger zeigt oft dorthin) (Sonnenkult) Deswegen in fast allen Filmen Szenen mit der Sonne
  • Pyramide = Machthierarchie (aus dem alten Ägypten, Pharaonen
  • Das allsehende Auge (auch Sonnenzeichen = Überwachung)
  • Eulen = Weisheit und Nachtjäger - überall auf der seite der "Guten" in sozialen Netzwerken, alternativen Kanälen und Filmen (
  • Bienen = Diener eines Staates (besonders das Portal IMdB.com = I aM d(th)e Bee - Veerteilung von Schlüsselwörtern/Keywords)
  • Löwe = Zeichen der Macht (Pharaonen, Ägypten)

Gegenstände:

  • Gitarre (steht oft im Hintergrund) - Standardzeichen für Freimaurer (Musik = Kunst, Kultur)
  • Schlüsselbund (z.B. offen sichtbar am Gürtel) = Schlüssel-Wörter (Codes)
  • große Mikrofone (die besonders auffallen)
  • Theatervorhang (oft im Hintergrund) = Theatervortsellung, Schauspiel

Kleidung:

  • Sonnenbrille = wie Agenten ("I wear my sunglasses at night" - Markenzeichen in vielen Filmen, wie Sie Leben, Matrix, Blues Brothers, usw.
  • Karierte Hemden, insbesondere Flanellhemden (Karo = Schachbrettmuster, wie auf den Böden der Logen)
  • Schlapphüte (oder ähnliche Hüte, wie früher Geheimagenten)
  • T-Shirts o.ä. mit Aufschrift ("Obey") - wie aus dem Film "Sie leben"

Bilder/Zeichen/Symbole:

☝️☀️🔺👁️⭐️☂️⚔️🛠️🦅🦁💍🗝️🕵️😜🐇🐝🦉😎🎸🎙️

Zahlen (auch als Quersumme) - z.B. bei Nicknamen in sozialen Netzwerken:

13, 23, 33, 42, 66, 666, 7, 77, 777, 17, 18 (=3x6), 88

Bild zum Beitrag
Magie, Religion, Netzwerk, Deutschland, Politik, Code, Freimaurer, Freimaurerei, Geheimdienst, Geheimnis, Lüge, Macht, Okkultismus, Rituale, Symbolik, Überwachung, Zeichen, Symbol, Erkennungsmerkmale, gut und böse, Okkult

Video abspielen und korrekt beenden (Java programmieren)?

Hallo,

ich probiere gerade mit der Programmiersprache Java einen Video-Player zu programmieren, welcher ein Video abspielen kann und per Button wieder beendet.

Allerdings, wenn ich es ein weiteres Mal öffnen will, wird es nicht mehr angezeigt und nichts passiert mehr. Wie kann ich das lösen? Ich komme einfach nicht mehr weiter oder gibt es eine einfache Möglichkeit?

Danke für eure Kommentare im Voraus.

import javafx.application.Platform;
import javafx.embed.swing.JFXPanel;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.media.Media;
import javafx.scene.media.MediaPlayer;
import javafx.scene.media.MediaView;
import javax.swing.*;
import java.awt.*;
import java.io.File;

public class VideoOpener {
  private static JDialog videoDialog;
  private static MediaPlayer mediaPlayer;
  private static JFXPanel jfxPanel;

  public static void main(String[] args) {
    // Initialisiere JavaFX im Swing-Thread
    SwingUtilities.invokeLater(() -> {
      new JFXPanel(); // Initialisiert JavaFX (damit der JavaFX-Thread startet)
      playVideo(); // Startet das Video nach der Initialisierung
    });
  }

  public static void playVideo() {
    // Erstelle das JDialog für das Video
    videoDialog = new JDialog((Frame) null, "Video", true);
    videoDialog.setUndecorated(true);
    Dimension screenSize = Toolkit.getDefaultToolkit().getScreenSize();
    videoDialog.setSize(screenSize.width, screenSize.height); // Setzt das Fenster auf Vollbild
    videoDialog.setLocation(0, 0); // Positioniert das Fenster oben links
    JPanel videoPanel = new JPanel(new BorderLayout());
    jfxPanel = new JFXPanel(); // JFXPanel für JavaFX
    videoPanel.add(jfxPanel, BorderLayout.CENTER);

    // Schließen-Button (Fenster schließen)
    JButton closeButton = new JButton("Schließen");
    closeButton.addActionListener(e -> {
      stopVideo(); // Stoppt das Video
      videoDialog.dispose(); // Schließt das Dialog-Fenster
      Platform.exit(); // Beendet den JavaFX-Thread
    });
    // Setze den Button unten im JPanel
    videoPanel.add(closeButton, BorderLayout.SOUTH);

    // Lade und starte das Video im JavaFX-Thread
    Platform.runLater(() -> {
      File videoFile = new File("C:/Users/nikla/Pictures/Screenshots/Spiel/Film1.mp4");

      if (!videoFile.exists()) {
        System.err.println("Die Videodatei existiert nicht: " + videoFile.getAbsolutePath());
        return;
      }

      // Wenn der MediaPlayer bereits existiert, stoppen und freigeben
      if (mediaPlayer != null) {
        mediaPlayer.stop();
        mediaPlayer.dispose();
      }

      // Erstelle den neuen MediaPlayer
      Media media = new Media(videoFile.toURI().toString());
      mediaPlayer = new MediaPlayer(media);
      MediaView mediaView = new MediaView(mediaPlayer);
      mediaView.setFitWidth(screenSize.width);
      mediaView.setFitHeight(screenSize.height);

      // StackPane für das Layout
      StackPane stackPane = new StackPane();
      stackPane.getChildren().add(mediaView);

      // Setze die Scene für den JFXPanel
      Scene scene = new Scene(stackPane);
      jfxPanel.setScene(scene);

      // Spiele das Video ab
      mediaPlayer.play();
    });

    // Zeige das Video-Fenster an
    videoDialog.setContentPane(videoPanel);
    videoDialog.setVisible(true);
  }

  // Methode zum Stoppen des Videos und Freigeben des MediaPlayers
  private static void stopVideo() {
    if (mediaPlayer != null) {
      mediaPlayer.stop();
      mediaPlayer.dispose();
      mediaPlayer = null;
    }
  }
}
App, Java, Code, Programmiersprache

Meistgelesene Beiträge zum Thema Code