• 7 Posts
  • 13 Comments
Joined 2 years ago
cake
Cake day: July 30th, 2023

help-circle




  • Jurors showed no appetite for the Justice Department’s case against “sandwich guy,” the D.C. resident who chucked a Subway sandwich at the chest of a federal officer, finding him not guilty Thursday after several hours of deliberations.

    The jury — which feasted on sandwiches for lunch Thursday, according to a person familiar with jury lunches — deliberated the charges for several hours Wednesday and Thursday before delivering the verdict.

    Someone is feeling cute. And rightful so. When you lie about a sandwich exploding on you, and it can still be seen in the package after… Not to mention trying to take a hamfisted hogie slap to federal court, you deserve the pickling.





  • A dishwasher has two major cycles that are relevant to dish soap. One is the I’ll show about 15 minutes. And the there is the main wash, which is like an hour plus depending. If you don’t use powdered dish soap and split it up then you’re missing the advantage of the prewash.

    Second half is focused on the effect of heat and why you should drain your water line of cold water through your faucet before you start your dishwasher. By doing that, you increase the heat and you increase the longevity of that heat on is that are in your dishwasher. It’s worth noting that heat is good for dishwashing liquid both because it helps the enzyme break down and also probably breaks down with the food material at some cases.

    Beyond that, he was very enthusiastic about his new soap, which he helped create, and rightfully so. Double blind test, it came out very well against premium pods, and he was able to prove his whole point about pods not being useful in a prewash.



  • Try this Python script:

    from PIL import Image, ImageDraw, ImageFont
    import os
    from pathlib import Path
    
    def watermark_from_filename(input_dir, output_dir=None, 
                               position='bottom-right', 
                               font_size=36,
                               color='white',
                               opacity=200):
        """
        Add watermark to images using their filename (without extension)
        
        Args:
            input_dir: Directory containing images
            output_dir: Output directory (if None, creates 'watermarked' subfolder)
            position: 'bottom-right', 'bottom-left', 'top-right', 'top-left', 'center'
            font_size: Size of the watermark text
            color: Color of the text ('white', 'black', or RGB tuple)
            opacity: Transparency (0-255, 255 is fully opaque)
        """
        
        # Setup directories
        input_path = Path(input_dir)
        if output_dir is None:
            output_path = input_path / 'watermarked'
        else:
            output_path = Path(output_dir)
        
        output_path.mkdir(exist_ok=True)
        
        # Supported image formats
        supported_formats = {'.jpg', '.jpeg', '.png', '.tiff', '.bmp'}
        
        # Process each image
        for img_file in input_path.iterdir():
            if img_file.suffix.lower() not in supported_formats:
                continue
                
            print(f"Processing: {img_file.name}")
            
            # Open image
            img = Image.open(img_file)
            
            # Convert to RGBA if needed (for transparency support)
            if img.mode != 'RGBA':
                img = img.convert('RGBA')
            
            # Create transparent overlay
            txt_layer = Image.new('RGBA', img.size, (255, 255, 255, 0))
            draw = ImageDraw.Draw(txt_layer)
            
            # Get filename without extension
            watermark_text = img_file.stem
            
            # Try to load a nice font, fall back to default if not available
            try:
                font = ImageFont.truetype("arial.ttf", font_size)
            except:
                try:
                    font = ImageFont.truetype("/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf", font_size)
                except:
                    font = ImageFont.load_default()
            
            # Get text size using textbbox
            bbox = draw.textbbox((0, 0), watermark_text, font=font)
            text_width = bbox[2] - bbox[0]
            text_height = bbox[3] - bbox[1]
            
            # Calculate position
            margin = 20
            if position == 'bottom-right':
                x = img.width - text_width - margin
                y = img.height - text_height - margin
            elif position == 'bottom-left':
                x = margin
                y = img.height - text_height - margin
            elif position == 'top-right':
                x = img.width - text_width - margin
                y = margin
            elif position == 'top-left':
                x = margin
                y = margin
            elif position == 'center':
                x = (img.width - text_width) // 2
                y = (img.height - text_height) // 2
            else:
                x = img.width - text_width - margin
                y = img.height - text_height - margin
            
            # Convert color name to RGB if needed
            if color == 'white':
                rgb_color = (255, 255, 255, opacity)
            elif color == 'black':
                rgb_color = (0, 0, 0, opacity)
            else:
                rgb_color = (*color, opacity) if isinstance(color, tuple) else (255, 255, 255, opacity)
            
            # Draw text
            draw.text((x, y), watermark_text, font=font, fill=rgb_color)
            
            # Composite the watermark onto the image
            watermarked = Image.alpha_composite(img, txt_layer)
            
            # Convert back to RGB for JPEG
            if img_file.suffix.lower() in {'.jpg', '.jpeg'}:
                watermarked = watermarked.convert('RGB')
            
            # Save
            output_file = output_path / img_file.name
            watermarked.save(output_file, quality=95)
            print(f"Saved: {output_file.name}")
        
        print(f"\nDone! Watermarked images saved to: {output_path}")
    
    # Example usage:
    if __name__ == "__main__":
        # Watermark all images in current directory
        watermark_from_filename(
            input_dir=".",
            position='bottom-right',
            font_size=48,
            color='white',
            opacity=200
        )
    

    To use this script:

    1. Install Pillow: pip install Pillow

    2. Save the script as watermark_dates.py

    3. Run it in your image directory:

      python watermark_dates.py
      

    Customization options:

    • position: Choose where the watermark appears
    • font_size: Adjust text size
    • color: ‘white’, ‘black’, or RGB tuple like (255, 0, 0) for red
    • opacity: 0-255 (lower = more transparent)


  • While the team working with Dogs of Chernobyl was investigating the blue dogs, they came upon an old portable toilet, or porta-potty.

    “We are suspecting that this substance was from an old portable toilet that was in the same location as the dogs; however, we were unable to positively confirm our suspicions,” says Betz.

    Thanks to the photos of the blue dogs that have a geotag, the team accurately pinpointed the location of the dogs in conjunction with the portable toilet.

    Many portable toilets contain a blue liquid that serves as a deodorizer, and they suggest the dogs may have rolled in it. However, until the team can catch and analyze one of the blue Chornobyl dogs, they won’t know for sure what caused the blue fur.




  • For this who need more then a headline.

    For the first time ever, the top two “ports” for U.S. merchandise trade are airports.

    This is particularly counterintuitive given that the nation’s top three trade partners largely rely on border crossings (Canada, Mexico) and seaports (China) and account for more than one-third of all U.S. trade.

    Through May, New York’s JFK International Airport and Chicago’s O’Hare International Airport ranked first and second for the value of their trade, according to my analysis of the latest U.S. Census Bureau data.


  • The Russia bans gasoline exports measure will start on 29 July and, for the first time, apply to fuel producers as well. Interfax reports that the Kremlin announced the full restriction to stabilize the domestic fuel market amid peak summer demand. Liga notes that the ban could also be prolonged into September if the situation does not improve.

    Sanctions on Russian oil and refined products have cut export revenues and reduced access to parts and buyers. At the same time, the war drives enormous military fuel consumption, while Ukrainian attacks on fuel facilities and transport routes disrupt production and logistics. These pressures collide with seasonal demand peaks from farming during summer, creating domestic shortages. To keep enough fuel for internal needs, Moscow has turned to export bans as a stopgap measure.




  • Local and out-of-state businesses with global revenues of $5 million or more will need to pay those producer fees to help pay for recycling services, like helping local hauling companies purchase new trucks and recycling bins. Funds will also help local governments administer the program and educate ratepayers about what is or isn’t recyclable.

    This new recycling system came out of legislation passed in 2021. That law was a response to a global recycling disruption that began in 2017, when China — the world’s largest importer of recyclables — stopped accepting several types of waste due to high levels of contamination.

    Since then, more domestic companies have cropped up to fulfill the nation’s demand for a place to recycle their trash, particularly plastics — according to Kim Holmes, executive director of Circular Action Alliance, the nonprofit charged with collecting and administering producer fees.

    “There is no struggle in finding end markets,” Holmes said. “We have homes for all of the materials we currently have.”

    The law requires recyclables to go to “responsible end markets” — that is, businesses that recycle materials in a way that doesn’t have major environmental or public health consequences. The statewide recycling list is based on materials that have such end markets.